home *** CD-ROM | disk | FTP | other *** search
/ Acorn User: China / Acorn User China CD-ROM (UK) (Disc A) / Acorn User China CD-ROM (UK) (Disc A).bin / HENSA / MATHS / GRAPH.ARC / !3DGraph_3DGraph < prev   
Unknown  |  1988-05-23  |  14.8 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

This file was not able to be converted.
This format is not currently supported by dexvert.

ConfidenceProgramDetectionMatch TypeSupport
100% file data default
100% xdgMime image/x-tga default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 0d 00 0a 0e f4 20 3e 33 | 44 47 72 61 70 68 0d 00 |..... >3|DGraph..|
|00000010| 14 10 de 20 50 31 25 20 | 26 34 30 30 30 30 0d 00 |... P1% |&40000..|
|00000020| 1e 0e ee 20 85 20 e5 20 | 8d 54 68 40 0d 00 28 07 |... . . |.Th@..(.|
|00000030| eb 20 30 0d 00 32 04 0d | 00 3c 39 f1 8a 30 2c 32 |. 0..2..|.<9..0,2|
|00000040| 30 29 3b 22 27 2a 27 2c | 27 23 27 20 74 6f 20 73 |0);"'*',|'#' to s|
|00000050| 65 6c 65 63 74 20 61 75 | 74 6f 6d 61 74 69 63 2f |elect au|tomatic/|
|00000060| 6d 61 6e 75 61 6c 20 72 | 6f 74 61 74 69 6f 6e 22 |manual r|otation"|
|00000070| 0d 00 46 4e f1 27 27 22 | 57 68 65 6e 20 69 6e 20 |..FN.''"|When in |
|00000080| 61 75 74 6f 6d 61 74 69 | 63 20 72 6f 74 61 74 69 |automati|c rotati|
|00000090| 6f 6e 2c 20 6c 65 66 74 | 2f 72 69 67 68 74 20 62 |on, left|/right b|
|000000a0| 75 74 74 6f 6e 73 20 69 | 6e 63 72 65 61 73 65 2f |uttons i|ncrease/|
|000000b0| 64 65 63 72 65 61 73 65 | 20 73 74 65 70 22 0d 00 |decrease| step"..|
|000000c0| 50 55 f1 27 22 57 68 65 | 6e 20 69 6e 20 6d 61 6e |PU.'"Whe|n in man|
|000000d0| 75 61 6c 20 72 6f 74 61 | 74 69 6f 6e 2c 20 6b 65 |ual rota|tion, ke|
|000000e0| 65 70 69 6e 67 20 68 6f | 6c 64 20 6f 66 20 74 68 |eping ho|ld of th|
|000000f0| 65 20 6d 6f 75 73 65 20 | 62 75 74 74 6f 6e 73 20 |e mouse |buttons |
|00000100| 64 6f 65 73 20 74 68 65 | 20 66 6f 6c 6c 6f 77 69 |does the| followi|
|00000110| 6e 67 22 0d 00 5a 51 f1 | 27 22 4c 65 66 74 20 3a |ng"..ZQ.|'"Left :|
|00000120| 20 5a 6f 6f 6d 20 69 6e | 2f 6f 75 74 20 20 20 20 | Zoom in|/out |
|00000130| 20 20 20 4d 69 64 64 6c | 65 20 3a 20 4d 6f 76 65 | Middl|e : Move|
|00000140| 20 61 62 6f 75 74 20 73 | 63 72 65 65 6e 20 20 20 | about s|creen |
|00000150| 20 20 20 20 52 69 67 68 | 74 20 3a 20 41 6e 69 6d | Righ|t : Anim|
|00000160| 61 74 65 22 0d 00 64 24 | f1 8a 33 30 2c 33 31 29 |ate"..d$|..30,31)|
|00000170| 3b 22 28 63 29 20 4a 2e | 41 62 62 6f 74 74 20 32 |;"(c) J.|Abbott 2|
|00000180| 32 2e 31 2e 38 38 22 3b | 0d 00 6e 0b f1 8a 30 2c |2.1.88";|..n...0,|
|00000190| 30 29 3b 0d 00 78 29 f1 | 22 54 72 79 20 3a 20 45 |0);..x).|"Try : E|
|000001a0| 58 50 28 43 4f 53 28 53 | 51 52 28 58 25 2a 58 25 |XP(COS(S|QR(X%*X%|
|000001b0| 2b 59 25 2a 59 25 29 29 | 2a 33 29 22 0d 00 82 4a |+Y%*Y%))|*3)"...J|
|000001c0| f1 22 20 20 20 20 20 20 | 28 28 53 49 4e 52 41 44 |." |((SINRAD|
|000001d0| 28 28 31 38 30 2f 28 73 | 69 7a 65 2b 31 29 29 2a |((180/(s|ize+1))*|
|000001e0| 58 25 29 29 2a 28 53 49 | 4e 52 41 44 28 28 31 38 |X%))*(SI|NRAD((18|
|000001f0| 30 2f 28 73 69 7a 65 2b | 31 29 29 2a 59 25 29 29 |0/(size+|1))*Y%))|
|00000200| 29 2a 31 30 30 22 0d 00 | 8c 35 f1 22 20 20 20 20 |)*100"..|.5." |
|00000210| 20 20 43 4f 53 28 53 51 | 52 28 58 25 2a 58 25 2b | COS(SQ|R(X%*X%+|
|00000220| 59 25 2a 59 25 2f 32 29 | 2b 32 30 2a 53 49 4e 52 |Y%*Y%/2)|+20*SINR|
|00000230| 41 44 28 59 25 29 29 2a | 31 30 22 0d 00 96 1e e8 |AD(Y%))*|10".....|
|00000240| 27 27 22 45 6e 74 65 72 | 20 61 6e 20 65 71 75 61 |''"Enter| an equa|
|00000250| 74 69 6f 6e 20 3a 22 41 | 24 0d 00 a0 24 e8 27 27 |tion :"A|$...$.''|
|00000260| 27 22 53 69 7a 65 20 6f | 66 20 67 72 61 70 68 20 |'"Size o|f graph |
|00000270| 28 32 2d 35 30 29 20 3a | 22 73 69 7a 65 0d 00 aa |(2-50) :|"size...|
|00000280| 1e e7 20 73 69 7a 65 3c | 32 20 84 20 73 69 7a 65 |.. size<|2 . size|
|00000290| 3e 35 30 20 73 69 7a 65 | 3d 32 30 0d 00 b4 04 0d |>50 size|=20.....|
|000002a0| 00 be 0d 2a 53 48 41 44 | 4f 57 20 32 0d 00 c8 07 |...*SHAD|OW 2....|
|000002b0| eb 31 35 0d 00 d2 0b 2a | 53 48 41 44 4f 57 0d 00 |.15....*|SHADOW..|
|000002c0| dc 0a eb 20 31 33 3a 87 | 0d 00 e6 04 0d 00 f0 15 |... 13:.|........|
|000002d0| dc 20 73 69 7a 65 2a 28 | 73 69 7a 65 2d 31 29 2a |. size*(|size-1)*|
|000002e0| 32 0d 00 fa 04 0d 01 04 | 04 0d 01 0e 05 f7 0d 01 |2.......|........|
|000002f0| 18 09 f3 20 53 4f 25 0d | 01 22 12 f2 61 73 73 3a |... SO%.|."..ass:|
|00000300| d6 64 6f 77 6e 6c 6f 61 | 64 0d 01 2c 04 0d 01 36 |.downloa|d..,...6|
|00000310| 10 51 25 3d 30 3a 5a 25 | 3d 73 69 7a 65 0d 01 40 |.Q%=0:Z%|=size..@|
|00000320| 11 e3 20 78 25 3d 31 20 | b8 20 73 69 7a 65 0d 01 |.. x%=1 |. size..|
|00000330| 4a 11 e3 20 79 25 3d 31 | 20 b8 20 73 69 7a 65 0d |J.. y%=1| . size.|
|00000340| 01 54 20 78 70 6f 69 6e | 74 21 51 25 3d 28 78 25 |.T xpoin|t!Q%=(x%|
|00000350| 2d 28 73 69 7a 65 2b 31 | 29 2f 32 29 2a 31 30 0d |-(size+1|)/2)*10.|
|00000360| 01 5e 20 79 70 6f 69 6e | 74 21 51 25 3d 28 79 25 |.^ ypoin|t!Q%=(y%|
|00000370| 2d 28 73 69 7a 65 2b 31 | 29 2f 32 29 2a 31 30 0d |-(size+1|)/2)*10.|
|00000380| 01 68 21 7a 70 6f 69 6e | 74 21 51 25 3d a4 66 75 |.h!zpoin|t!Q%=.fu|
|00000390| 6e 63 74 69 6f 6e 28 78 | 25 2c 79 25 29 2a 35 30 |nction(x|%,y%)*50|
|000003a0| 0d 01 72 2b e7 20 28 7a | 70 6f 69 6e 74 21 51 25 |..r+. (z|point!Q%|
|000003b0| 29 2f 33 30 30 3e 5a 25 | 20 5a 25 3d 28 7a 70 6f |)/300>Z%| Z%=(zpo|
|000003c0| 69 6e 74 21 51 25 29 2f | 33 30 30 0d 01 7c 09 51 |int!Q%)/|300..|.Q|
|000003d0| 25 2b 3d 34 0d 01 86 05 | ed 0d 01 90 05 ed 0d 01 |%+=4....|........|
|000003e0| 9a 04 0d 01 a4 08 51 25 | 3d 30 0d 01 ae 13 e3 20 |......Q%|=0..... |
|000003f0| 7a 25 3d 30 20 b8 20 73 | 69 7a 65 2d 31 0d 01 b8 |z%=0 . s|ize-1...|
|00000400| 13 e3 20 78 25 3d 30 20 | b8 20 73 69 7a 65 2d 32 |.. x%=0 |. size-2|
|00000410| 0d 01 c2 1b 78 73 32 21 | 51 25 3d 28 78 25 2b 28 |....xs2!|Q%=(x%+(|
|00000420| 7a 25 2a 73 69 7a 65 29 | 29 2a 34 0d 01 cc 15 78 |z%*size)|)*4....x|
|00000430| 73 33 21 51 25 3d 28 78 | 73 32 21 51 25 29 2b 34 |s3!Q%=(x|s2!Q%)+4|
|00000440| 0d 01 d6 09 51 25 2b 3d | 34 0d 01 e0 05 ed 0d 01 |....Q%+=|4.......|
|00000450| ea 05 ed 0d 01 f4 04 0d | 01 fe 13 e3 20 78 25 3d |........|.... x%=|
|00000460| 30 20 b8 20 73 69 7a 65 | 2d 31 0d 02 08 13 e3 20 |0 . size|-1..... |
|00000470| 7a 25 3d 30 20 b8 20 73 | 69 7a 65 2d 32 0d 02 12 |z%=0 . s|ize-2...|
|00000480| 1b 78 73 32 21 51 25 3d | 28 78 25 2b 28 7a 25 2a |.xs2!Q%=|(x%+(z%*|
|00000490| 73 69 7a 65 29 29 2a 34 | 0d 02 1c 1a 78 73 33 21 |size))*4|....xs3!|
|000004a0| 51 25 3d 28 78 73 32 21 | 51 25 29 2b 73 69 7a 65 |Q%=(xs2!|Q%)+size|
|000004b0| 2a 34 0d 02 26 09 51 25 | 2b 3d 34 0d 02 30 05 ed |*4..&.Q%|+=4..0..|
|000004c0| 0d 02 3a 05 ed 0d 02 44 | 04 0d 02 4e 21 78 25 3d |..:....D|...N!x%=|
|000004d0| 30 3a 79 25 3d 30 3a 7a | 25 3d 30 3a 73 74 3d 30 |0:y%=0:z|%=0:st=0|
|000004e0| 3a 4d 25 3d 30 3a 49 25 | 3d 35 0d 02 58 15 53 3d |:M%=0:I%|=5..X.S=|
|000004f0| 32 30 30 3a 21 64 3d 53 | 3a 73 74 65 70 3d 31 0d |200:!d=S|:step=1.|
|00000500| 02 62 16 52 48 4f 3d 5a | 25 2a 33 30 3a 21 72 68 |.b.RHO=Z|%*30:!rh|
|00000510| 6f 3d 52 48 4f 0d 02 6c | 04 0d 02 76 15 c8 97 20 |o=RHO..l|...v... |
|00000520| c8 93 20 30 2c 30 2c 37 | 32 30 2c 37 32 30 0d 02 |.. 0,0,7|20,720..|
|00000530| 80 04 0d 02 8a 05 f5 0d | 02 94 0b c8 8e 20 4d 25 |........|..... M%|
|00000540| 20 ca 0d 02 9e 35 c9 20 | 30 3a c8 97 20 58 25 2c | ....5. |0:.. X%,|
|00000550| 59 25 2c 62 25 3a 78 25 | 3d 78 25 2b 30 3a 79 25 |Y%,b%:x%|=x%+0:y%|
|00000560| 3d 79 25 2b 30 3a 7a 25 | 3d 7a 25 2b 73 74 65 70 |=y%+0:z%|=z%+step|
|00000570| 3a 4f 55 25 3d 55 25 0d | 02 a8 21 e7 20 28 62 25 |:OU%=U%.|..!. (b%|
|00000580| 20 80 20 34 29 20 80 20 | 73 74 65 70 3c 33 36 30 | . 4) . |step<360|
|00000590| 20 73 74 65 70 2b 3d 31 | 0d 02 b2 22 e7 20 28 62 | step+=1|...". (b|
|000005a0| 25 20 80 20 31 29 20 80 | 20 73 74 65 70 3e 2d 33 |% . 1) .| step>-3|
|000005b0| 36 30 20 73 74 65 70 2d | 3d 31 0d 02 bc 2c c9 20 |60 step-|=1...,. |
|000005c0| 31 3a c8 97 20 7a 25 2c | 78 25 2c 62 25 3a 79 25 |1:.. z%,|x%,b%:y%|
|000005d0| 3d 30 3a 7a 25 3d 37 32 | 30 2d 7a 25 3a 78 25 3d |=0:z%=72|0-z%:x%=|
|000005e0| 37 32 30 2d 78 25 0d 02 | c6 04 0d 02 d0 0e e7 20 |720-x%..|....... |
|000005f0| 62 25 20 80 20 31 20 8c | 0d 02 da 20 c8 97 20 58 |b% . 1 .|... .. X|
|00000600| 25 2c 59 25 2c 62 25 3a | c8 97 20 c8 93 20 30 2c |%,Y%,b%:|.. .. 0,|
|00000610| 30 2c 31 32 37 39 2c 30 | 0d 02 e4 21 c8 97 20 b8 |0,1279,0|...!.. .|
|00000620| 20 28 21 63 6f 75 6e 74 | 6f 66 66 29 2f 34 2a 28 | (!count|off)/4*(|
|00000630| 73 69 7a 65 2d 31 29 2c | 30 0d 02 ee 05 f5 0d 02 |size-1),|0.......|
|00000640| f8 38 c8 97 20 42 25 2c | 41 25 2c 62 25 3a 21 63 |.8.. B%,|A%,b%:!c|
|00000650| 6f 75 6e 74 6f 66 66 3d | 28 42 25 20 83 20 73 69 |ountoff=|(B% . si|
|00000660| 7a 65 29 2a 34 2a 28 73 | 69 7a 65 2d 31 29 3a d6 |ze)*4*(s|ize-1):.|
|00000670| 70 6c 6f 74 75 70 0d 03 | 02 0e fd 20 ac 20 62 25 |plotup..|... . b%|
|00000680| 20 80 20 31 0d 03 0c 20 | c8 97 20 c8 93 20 30 2c | . 1... |.. .. 0,|
|00000690| 30 2c 37 32 30 2c 37 32 | 30 3a c8 97 20 b8 20 58 |0,720,72|0:.. . X|
|000006a0| 25 2c 59 25 0d 03 16 05 | cd 0d 03 20 04 0d 03 2a |%,Y%....|... ...*|
|000006b0| 0e e7 20 62 25 20 80 20 | 34 20 8c 0d 03 34 31 c8 |.. b% . |4 ...41.|
|000006c0| 97 20 58 25 2c 59 25 2c | 62 25 3a c8 97 20 c8 93 |. X%,Y%,|b%:.. ..|
|000006d0| 20 30 2c 30 2c 31 32 37 | 39 2c 31 30 32 33 3a c8 | 0,0,127|9,1023:.|
|000006e0| 97 20 b8 20 28 21 64 29 | 2f 34 2c 30 0d 03 3e 05 |. . (!d)|/4,0..>.|
|000006f0| f5 0d 03 48 1f c8 97 20 | 41 25 2c 79 25 2c 62 25 |...H... |A%,y%,b%|
|00000700| 3a 21 64 3d 41 25 2a 34 | 3a d6 70 6c 6f 74 75 70 |:!d=A%*4|:.plotup|
|00000710| 0d 03 52 0e fd 20 ac 20 | 62 25 20 80 20 34 0d 03 |..R.. . |b% . 4..|
|00000720| 5c 20 c8 97 20 c8 93 20 | 30 2c 30 2c 37 32 30 2c |\ .. .. |0,0,720,|
|00000730| 37 32 30 3a c8 97 20 b8 | 20 58 25 2c 59 25 0d 03 |720:.. .| X%,Y%..|
|00000740| 66 05 cd 0d 03 70 04 0d | 03 7a 0e e7 20 62 25 20 |f....p..|.z.. b% |
|00000750| 80 20 32 20 8c 0d 03 84 | 22 c8 97 20 58 25 2c 59 |. 2 ....|".. X%,Y|
|00000760| 25 2c 62 25 3a c8 97 20 | c8 93 20 30 2c 30 2c 36 |%,b%:.. |.. 0,0,6|
|00000770| 34 30 2c 31 30 32 34 0d | 03 8e 20 c8 97 20 b8 20 |40,1024.|.. .. . |
|00000780| 28 21 78 61 64 64 29 2b | 33 32 30 2c 35 31 32 2d |(!xadd)+|320,512-|
|00000790| 28 21 79 61 64 64 29 0d | 03 98 05 f5 0d 03 a2 31 |(!yadd).|.......1|
|000007a0| c8 97 20 42 25 2c 41 25 | 2c 62 25 3a 21 78 61 64 |.. B%,A%|,b%:!xad|
|000007b0| 64 3d 42 25 2d 33 32 30 | 3a 21 79 61 64 64 3d 35 |d=B%-320|:!yadd=5|
|000007c0| 31 32 2d 41 25 3a d6 70 | 6c 6f 74 75 70 0d 03 ac |12-A%:.p|lotup...|
|000007d0| 0e fd 20 ac 20 62 25 20 | 80 20 32 0d 03 b6 20 c8 |.. . b% |. 2... .|
|000007e0| 97 20 c8 93 20 30 2c 30 | 2c 37 32 30 2c 37 32 30 |. .. 0,0|,720,720|
|000007f0| 3a c8 97 20 b8 20 58 25 | 2c 59 25 0d 03 c0 05 cd |:.. . X%|,Y%.....|
|00000800| 0d 03 ca 04 0d 03 d4 05 | cb 0d 03 de 21 e7 20 a6 |........|....!. .|
|00000810| 28 2d 39 31 29 20 4d 25 | 3d 31 20 8b 20 e7 20 a6 |(-91) M%|=1 . . .|
|00000820| 28 2d 39 32 29 20 4d 25 | 3d 30 0d 03 e8 3a e7 20 |(-92) M%|=0...:. |
|00000830| 78 25 3e 37 31 39 20 78 | 25 2d 3d 37 32 30 20 8b |x%>719 x|%-=720 .|
|00000840| 20 e7 20 79 25 3e 37 31 | 39 20 79 25 2d 3d 37 32 | . y%>71|9 y%-=72|
|00000850| 30 20 8b 20 e7 20 7a 25 | 3e 37 31 39 20 7a 25 2d |0 . . z%|>719 z%-|
|00000860| 3d 37 32 30 0d 03 f2 34 | e7 20 78 25 3c 30 20 78 |=720...4|. x%<0 x|
|00000870| 25 2b 3d 37 32 30 20 8b | 20 e7 20 79 25 3c 30 20 |%+=720 .| . y%<0 |
|00000880| 79 25 2b 3d 37 32 30 20 | 8b 20 e7 20 7a 25 3c 30 |y%+=720 |. . z%<0|
|00000890| 20 7a 25 2b 3d 37 32 30 | 0d 03 fc 2c 21 61 6e 67 | z%+=720|...,!ang|
|000008a0| 6c 65 78 3d 78 25 3a 21 | 61 6e 67 6c 65 79 3d 79 |lex=x%:!|angley=y|
|000008b0| 25 3a 21 61 6e 67 6c 65 | 7a 3d 7a 25 3a d6 70 6c |%:!angle|z=z%:.pl|
|000008c0| 6f 74 75 70 0d 04 06 06 | fd 30 0d 04 10 04 0d 04 |otup....|.0......|
|000008d0| 1a 04 0d 04 24 15 dd a4 | 66 75 6e 63 74 69 6f 6e |....$...|function|
|000008e0| 28 58 25 2c 59 25 29 0d | 04 2e 09 3d a0 20 41 24 |(X%,Y%).|...=. A$|
|000008f0| 0d 04 38 04 0d 04 42 04 | 0d 04 4c 09 dd f2 61 73 |..8...B.|..L...as|
|00000900| 73 0d 04 56 2a 6e 75 6d | 31 3d 31 3a 6e 75 6d 32 |s..V*num|1=1:num2|
|00000910| 3d 32 3a 61 6e 73 3d 33 | 3a 6e 65 67 3d 34 3a 63 |=2:ans=3|:neg=4:c|
|00000920| 6f 75 6e 74 3d 35 3a 6d | 25 3d 38 0d 04 60 31 78 |ount=5:m|%=8..`1x|
|00000930| 63 25 3d 37 3a 78 63 3d | 38 3a 79 63 25 3d 39 3a |c%=7:xc=|8:yc%=9:|
|00000940| 79 63 3d 31 30 3a 7a 63 | 25 3d 31 31 3a 7a 63 3d |yc=10:zc|%=11:zc=|
|00000950| 31 32 3a 70 6f 69 6e 74 | 65 72 3d 36 0d 04 6a 3b |12:point|er=6..j;|
|00000960| 78 3d 31 3a 78 31 3d 32 | 3a 79 3d 33 3a 79 31 3d |x=1:x1=2|:y=3:y1=|
|00000970| 34 3a 78 6f 3d 35 3a 79 | 6f 3d 36 3a 74 65 6d 70 |4:xo=5:y|o=6:temp|
|00000980| 3d 30 3a 6d 3d 37 3a 63 | 6f 6c 3d 38 3a 61 25 3d |=0:m=7:c|ol=8:a%=|
|00000990| 39 3a 62 25 3d 31 30 0d | 04 74 10 e3 41 25 3d 30 |9:b%=10.|.t..A%=0|
|000009a0| 20 b8 20 32 20 88 32 0d | 04 7e 0a 50 25 3d 50 31 | . 2 .2.|.~.P%=P1|
|000009b0| 25 0d 04 88 0a 5b 4f 50 | 54 41 25 0d 04 92 11 2e |%....[OP|TA%.....|
|000009c0| 73 63 72 65 65 6e 20 45 | 51 55 44 31 0d 04 9c 24 |screen E|QUD1...$|
|000009d0| 2e 58 43 25 20 45 51 55 | 44 30 3a 2e 59 43 25 20 |.XC% EQU|D0:.YC% |
|000009e0| 45 51 55 44 30 3a 2e 5a | 43 25 20 45 51 55 44 30 |EQUD0:.Z|C% EQUD0|
|000009f0| 0d 04 a6 27 2e 58 73 69 | 6e 20 45 51 55 44 30 3a |...'.Xsi|n EQUD0:|
|00000a00| 2e 59 73 69 6e 20 45 51 | 55 44 30 3a 2e 5a 73 69 |.Ysin EQ|UD0:.Zsi|
|00000a10| 6e 20 45 51 55 44 30 0d | 04 b0 27 2e 58 63 6f 73 |n EQUD0.|..'.Xcos|
|00000a20| 20 45 51 55 44 30 3a 2e | 59 63 6f 73 20 45 51 55 | EQUD0:.|Ycos EQU|
|00000a30| 44 30 3a 2e 5a 63 6f 73 | 20 45 51 55 44 30 0d 04 |D0:.Zcos| EQUD0..|
|00000a40| ba 2e 2e 64 20 45 51 55 | 44 30 3a 2e 72 31 33 20 |...d EQU|D0:.r13 |
|00000a50| 45 51 55 44 30 3a 2e 72 | 31 33 31 20 45 51 55 44 |EQUD0:.r|131 EQUD|
|00000a60| 30 3a 2e 72 68 6f 20 45 | 51 55 44 30 0d 04 c4 40 |0:.rho E|QUD0...@|
|00000a70| 2e 61 6e 67 6c 65 78 20 | 45 51 55 44 30 3a 2e 61 |.anglex |EQUD0:.a|
|00000a80| 6e 67 6c 65 79 20 45 51 | 55 44 30 3a 2e 61 6e 67 |ngley EQ|UD0:.ang|
|00000a90| 6c 65 7a 20 45 51 55 44 | 30 3a 2e 62 6b 64 20 45 |lez EQUD|0:.bkd E|
|00000aa0| 51 55 44 20 62 61 63 6b | 64 72 6f 70 0d 04 ce 4c |QUD back|drop...L|
|00000ab0| 2e 41 58 20 45 51 55 44 | 30 3a 2e 41 59 20 45 51 |.AX EQUD|0:.AY EQ|
|00000ac0| 55 44 30 3a 2e 41 58 31 | 20 45 51 55 44 30 3a 2e |UD0:.AX1| EQUD0:.|
|00000ad0| 41 59 31 20 45 51 55 44 | 30 3a 2e 41 58 32 20 45 |AY1 EQUD|0:.AX2 E|
|00000ae0| 51 55 44 30 3a 2e 41 59 | 32 20 45 51 55 44 30 3a |QUD0:.AY|2 EQUD0:|
|00000af0| 2e 43 20 45 51 55 44 30 | 0d 04 d8 37 2e 73 69 6e |.C EQUD0|...7.sin|
|00000b00| 20 45 51 55 44 20 73 69 | 6e 74 61 62 6c 65 3a 2e | EQUD si|ntable:.|
|00000b10| 63 6f 73 20 45 51 55 44 | 20 63 6f 73 74 61 62 6c |cos EQUD| costabl|
|00000b20| 65 3a 2e 73 74 70 6c 6f | 74 20 45 51 55 44 30 0d |e:.stplo|t EQUD0.|
|00000b30| 04 e2 13 2e 73 74 70 20 | 45 51 55 44 20 73 74 61 |....stp |EQUD sta|
|00000b40| 63 6b 0d 04 ec 36 2e 78 | 70 74 20 45 51 55 44 20 |ck...6.x|pt EQUD |
|00000b50| 78 70 6f 69 6e 74 3a 2e | 79 70 74 20 45 51 55 44 |xpoint:.|ypt EQUD|
|00000b60| 20 79 70 6f 69 6e 74 3a | 2e 7a 70 74 20 45 51 55 | ypoint:|.zpt EQU|
|00000b70| 44 20 7a 70 6f 69 6e 74 | 0d 04 f6 1f 2e 73 32 70 |D zpoint|.....s2p|
|00000b80| 20 45 51 55 44 20 78 73 | 32 3a 2e 73 33 70 20 45 | EQUD xs|2:.s3p E|
|00000b90| 51 55 44 20 78 73 33 0d | 05 00 2a 2e 73 74 70 31 |QUD xs3.|..*.stp1|
|00000ba0| 20 45 51 55 44 20 73 74 | 61 63 6b 31 3a 2e 73 63 | EQUD st|ack1:.sc|
|00000bb0| 72 61 64 64 20 45 51 55 | 44 26 31 46 44 38 30 30 |radd EQU|D&1FD800|
|00000bc0| 30 0d 05 0a 38 2e 78 76 | 69 65 77 20 45 51 55 44 |0...8.xv|iew EQUD|
|00000bd0| 30 3a 2e 79 76 69 65 77 | 20 45 51 55 44 30 3a 2e |0:.yview| EQUD0:.|
|00000be0| 7a 76 69 65 77 20 45 51 | 55 44 30 3a 2e 72 65 74 |zview EQ|UD0:.ret|
|00000bf0| 75 72 6e 20 45 51 55 44 | 30 0d 05 14 49 2e 76 61 |urn EQUD|0...I.va|
|00000c00| 20 45 51 55 44 30 3a 2e | 76 62 20 45 51 55 44 30 | EQUD0:.|vb EQUD0|
|00000c10| 3a 2e 76 65 20 45 51 55 | 44 30 3a 2e 76 66 20 45 |:.ve EQU|D0:.vf E|
|00000c20| 51 55 44 30 3a 2e 76 67 | 20 45 51 55 44 30 3a 2e |QUD0:.vg| EQUD0:.|
|00000c30| 76 69 20 45 51 55 44 30 | 3a 2e 76 6a 20 45 51 55 |vi EQUD0|:.vj EQU|
|00000c40| 44 30 0d 05 1e 2b 2e 76 | 6b 20 45 51 55 44 30 3a |D0...+.v|k EQUD0:|
|00000c50| 2e 63 78 20 45 51 55 44 | 20 63 61 6c 63 78 3a 2e |.cx EQUD| calcx:.|
|00000c60| 63 79 20 45 51 55 44 20 | 63 61 6c 63 79 0d 05 28 |cy EQUD |calcy..(|
|00000c70| 21 2e 6c 78 20 45 51 55 | 44 30 3a 2e 6c 79 20 45 |!.lx EQU|D0:.ly E|
|00000c80| 51 55 44 30 3a 2e 6c 7a | 20 45 51 55 44 30 0d 05 |QUD0:.lz| EQUD0..|
|00000c90| 32 2b 2e 53 4f 20 45 51 | 55 44 20 53 4f 25 2a 34 |2+.SO EQ|UD SO%*4|
|00000ca0| 3a 2e 73 63 72 61 64 64 | 31 20 45 51 55 44 30 3a |:.scradd|1 EQUD0:|
|00000cb0| 2e 63 74 20 45 51 55 44 | 30 0d 05 3c 2e 2e 78 61 |.ct EQUD|0..<..xa|
|00000cc0| 64 64 20 45 51 55 44 20 | 30 3a 2e 79 61 64 64 20 |dd EQUD |0:.yadd |
|00000cd0| 45 51 55 44 20 34 35 3a | 2e 63 6f 75 6e 74 6f 66 |EQUD 45:|.countof|
|00000ce0| 66 20 45 51 55 44 30 0d | 05 46 04 0d 05 50 04 0d |f EQUD0.|.F...P..|
|00000cf0| 05 5a 41 2e 64 69 76 20 | 20 20 20 20 20 20 20 20 |.ZA.div | |
|00000d00| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000d10| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;|
|00000d20| 20 73 69 67 6e 65 64 20 | 64 69 76 69 73 69 6f 6e | signed |division|
|00000d30| 0d 05 64 0d 4d 4f 56 20 | 52 30 2c 23 30 0d 05 6e |..d.MOV |R0,#0..n|
|00000d40| 17 43 4d 50 20 6e 75 6d | 31 2c 23 26 38 30 30 30 |.CMP num|1,#&8000|
|00000d50| 30 30 30 30 0d 05 78 23 | 82 43 53 20 52 30 2c 52 |0000..x#|.CS R0,R|
|00000d60| 30 2c 23 31 3a 52 53 42 | 43 53 20 6e 75 6d 31 2c |0,#1:RSB|CS num1,|
|00000d70| 6e 75 6d 31 2c 23 31 0d | 05 82 17 43 4d 50 20 6e |num1,#1.|...CMP n|
|00000d80| 75 6d 32 2c 23 26 38 30 | 30 30 30 30 30 30 0d 05 |um2,#&80|000000..|
|00000d90| 8c 23 82 43 53 20 52 30 | 2c 52 30 2c 23 31 3a 52 |.#.CS R0|,R0,#1:R|
|00000da0| 53 42 43 53 20 6e 75 6d | 32 2c 6e 75 6d 32 2c 23 |SBCS num|2,num2,#|
|00000db0| 31 0d 05 96 4c 4d 4f 56 | 20 61 6e 73 2c 23 30 3a |1...LMOV| ans,#0:|
|00000dc0| 4d 4f 56 20 6e 65 67 2c | 23 30 3a 4d 4f 56 20 70 |MOV neg,|#0:MOV p|
|00000dd0| 6f 69 6e 74 65 72 2c 23 | 33 32 20 20 20 20 20 20 |ointer,#|32 |
|00000de0| 20 3b 20 63 6c 65 61 72 | 20 64 69 76 2c 20 6d 6f | ; clear| div, mo|
|00000df0| 64 20 61 6e 64 20 63 6f | 75 6e 74 65 72 0d 05 a0 |d and co|unter...|
|00000e00| 31 2e 6c 6f 6f 70 64 20 | 20 20 20 20 20 20 20 20 |1.loopd | |
|00000e10| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000e20| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 0d 05 | | ;..|
|00000e30| aa 42 53 55 42 53 20 70 | 6f 69 6e 74 65 72 2c 70 |.BSUBS p|ointer,p|
|00000e40| 6f 69 6e 74 65 72 2c 23 | 31 20 20 20 20 20 20 20 |ointer,#|1 |
|00000e50| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; |
|00000e60| 64 65 63 72 65 61 73 65 | 20 63 6f 75 6e 74 65 72 |decrease| counter|
|00000e70| 0d 05 b4 3b ec 51 20 50 | 43 2c 52 31 34 20 20 20 |...;.Q P|C,R14 |
|00000e80| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000e90| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 69 | | ; i|
|00000ea0| 66 20 7a 65 72 6f 20 65 | 78 69 74 0d 05 be 3f 4d |f zero e|xit...?M|
|00000eb0| 4f 56 53 20 6e 75 6d 31 | 2c 6e 75 6d 31 2c 41 53 |OVS num1|,num1,AS|
|00000ec0| 4c 23 31 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |L#1 | |
|00000ed0| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 6e 75 6d | | ; num|
|00000ee0| 31 3d 6e 75 6d 31 20 2a | 20 32 0d 05 c8 48 42 50 |1=num1 *| 2...HBP|
|00000ef0| 4c 20 6c 6f 6f 70 64 20 | 20 20 20 20 20 20 20 20 |L loopd | |
|00000f00| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000f10| 20 20 20 20 20 20 20 20 | 20 20 3b 20 69 66 20 6e | | ; if n|
|00000f20| 6f 20 6f 76 65 72 66 6c | 6f 77 20 67 6f 20 62 61 |o overfl|ow go ba|
|00000f30| 63 6b 0d 05 d2 31 2e 64 | 6c 6f 6f 70 32 20 20 20 |ck...1.d|loop2 |
|00000f40| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000f50| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000f60| 20 20 3b 0d 05 dc 3f 4d | 4f 56 53 20 6e 75 6d 31 | ;...?M|OVS num1|
|00000f70| 2c 6e 75 6d 31 2c 41 53 | 4c 23 31 20 20 20 20 20 |,num1,AS|L#1 |
|00000f80| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000f90| 20 20 20 3b 20 6e 75 6d | 31 3d 6e 75 6d 31 20 2a | ; num|1=num1 *|
|00000fa0| 20 32 0d 05 e6 45 41 44 | 43 20 6e 65 67 2c 6e 65 | 2...EAD|C neg,ne|
|00000fb0| 67 2c 6e 65 67 20 20 20 | 20 20 20 20 20 20 20 20 |g,neg | |
|00000fc0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000fd0| 20 20 3b 20 6d 6f 64 3d | 6d 6f 64 20 2a 20 32 20 | ; mod=|mod * 2 |
|00000fe0| 2b 20 63 61 72 72 79 0d | 05 f0 45 43 4d 50 20 6e |+ carry.|..ECMP n|
|00000ff0| 65 67 2c 6e 75 6d 32 20 | 20 20 20 20 20 20 20 20 |eg,num2 | |
|00001000| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001010| 20 20 20 20 20 20 20 3b | 20 69 73 20 6d 6f 64 20 | ;| is mod |
|00001020| 3e 20 6e 75 6d 62 65 72 | 20 32 20 3f 0d 05 fa 45 |> number| 2 ?...E|
|00001030| 53 55 42 43 53 20 6e 65 | 67 2c 6e 65 67 2c 6e 75 |SUBCS ne|g,neg,nu|
|00001040| 6d 32 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |m2 | |
|00001050| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 79 65 | | ; ye|
|00001060| 73 2c 20 6d 6f 64 3d 6d | 6f 64 20 2d 20 6e 75 6d |s, mod=m|od - num|
|00001070| 32 0d 06 04 45 41 44 43 | 20 61 6e 73 2c 61 6e 73 |2...EADC| ans,ans|
|00001080| 2c 61 6e 73 20 20 20 20 | 20 20 20 20 20 20 20 20 |,ans | |
|00001090| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000010a0| 20 3b 20 61 6e 73 3d 61 | 6e 73 20 2a 20 32 20 2b | ; ans=a|ns * 2 +|
|000010b0| 20 63 61 72 72 79 0d 06 | 0e 42 53 55 42 53 20 70 | carry..|.BSUBS p|
|000010c0| 6f 69 6e 74 65 72 2c 70 | 6f 69 6e 74 65 72 2c 23 |ointer,p|ointer,#|
|000010d0| 31 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |1 | |
|000010e0| 20 20 20 20 20 20 3b 20 | 64 65 63 72 65 61 73 65 | ; |decrease|
|000010f0| 20 63 6f 75 6e 74 65 72 | 0d 06 18 45 42 4e 45 20 | counter|...EBNE |
|00001100| 64 6c 6f 6f 70 32 20 20 | 20 20 20 20 20 20 20 20 |dloop2 | |
|00001110| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001120| 20 20 20 20 20 20 20 20 | 3b 20 69 66 20 6e 6f 74 | |; if not|
|00001130| 20 7a 65 72 6f 20 67 6f | 20 62 61 63 6b 0d 06 22 | zero go| back.."|
|00001140| 1e 43 4d 50 20 52 30 2c | 23 31 3a 52 53 42 45 51 |.CMP R0,|#1:RSBEQ|
|00001150| 20 61 6e 73 2c 61 6e 73 | 2c 23 31 0d 06 2c 38 4d | ans,ans|,#1..,8M|
|00001160| 4f 56 20 50 43 2c 52 31 | 34 20 20 20 20 20 20 20 |OV PC,R1|4 |
|00001170| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001180| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 72 65 74 | | ; ret|
|00001190| 75 72 6e 0d 06 36 04 0d | 06 40 04 0d 06 4a 4c 2e |urn..6..|.@...JL.|
|000011a0| 63 6f 6e 76 65 72 74 5f | 61 6e 67 6c 65 73 20 20 |convert_|angles |
|000011b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 63 | | ; c|
|000011c0| 6f 6e 76 65 72 74 20 61 | 6e 67 6c 65 73 20 74 6f |onvert a|ngles to|
|000011d0| 20 73 69 6e 65 20 61 6e | 64 20 63 6f 73 69 6e 65 | sine an|d cosine|
|000011e0| 20 76 61 6c 75 65 73 0d | 06 54 12 53 54 52 20 52 | values.|.T.STR R|
|000011f0| 31 34 2c 72 65 74 75 72 | 6e 0d 06 5e 4a 4c 44 52 |14,retur|n..^JLDR|
|00001200| 20 6e 65 67 2c 73 69 6e | 20 20 20 20 20 20 20 20 | neg,sin| |
|00001210| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001220| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001230| 20 20 20 20 20 20 20 3b | 20 73 69 6e 65 20 74 61 | ;| sine ta|
|00001240| 62 6c 65 0d 06 68 47 4c | 44 52 20 52 30 2c 61 6e |ble..hGL|DR R0,an|
|00001250| 67 6c 65 78 3a 41 44 44 | 20 52 30 2c 6e 65 67 2c |glex:ADD| R0,neg,|
|00001260| 52 30 2c 41 53 4c 23 32 | 3a 4c 44 52 20 52 30 2c |R0,ASL#2|:LDR R0,|
|00001270| 5b 52 30 5d 3a 53 54 52 | 20 52 30 2c 58 73 69 6e |[R0]:STR| R0,Xsin|
|00001280| 20 3b 20 61 6e 67 6c 65 | 20 58 0d 06 72 47 4c 44 | ; angle| X..rGLD|
|00001290| 52 20 52 30 2c 61 6e 67 | 6c 65 79 3a 41 44 44 20 |R R0,ang|ley:ADD |
|000012a0| 52 30 2c 6e 65 67 2c 52 | 30 2c 41 53 4c 23 32 3a |R0,neg,R|0,ASL#2:|
|000012b0| 4c 44 52 20 52 30 2c 5b | 52 30 5d 3a 53 54 52 20 |LDR R0,[|R0]:STR |
|000012c0| 52 30 2c 59 73 69 6e 20 | 3b 20 61 6e 67 6c 65 20 |R0,Ysin |; angle |
|000012d0| 59 0d 06 7c 47 4c 44 52 | 20 52 30 2c 61 6e 67 6c |Y..|GLDR| R0,angl|
|000012e0| 65 7a 3a 41 44 44 20 52 | 30 2c 6e 65 67 2c 52 30 |ez:ADD R|0,neg,R0|
|000012f0| 2c 41 53 4c 23 32 3a 4c | 44 52 20 52 30 2c 5b 52 |,ASL#2:L|DR R0,[R|
|00001300| 30 5d 3a 53 54 52 20 52 | 30 2c 5a 73 69 6e 20 3b |0]:STR R|0,Zsin ;|
|00001310| 20 61 6e 67 6c 65 20 5a | 0d 06 86 04 0d 06 90 4c | angle Z|.......L|
|00001320| 4c 44 52 20 6e 65 67 2c | 63 6f 73 20 20 20 20 20 |LDR neg,|cos |
|00001330| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001340| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001350| 20 20 20 20 20 20 20 20 | 20 20 3b 20 63 6f 73 69 | | ; cosi|
|00001360| 6e 65 20 74 61 62 6c 65 | 0d 06 9a 47 4c 44 52 20 |ne table|...GLDR |
|00001370| 52 30 2c 61 6e 67 6c 65 | 78 3a 41 44 44 20 52 30 |R0,angle|x:ADD R0|
|00001380| 2c 6e 65 67 2c 52 30 2c | 41 53 4c 23 32 3a 4c 44 |,neg,R0,|ASL#2:LD|
|00001390| 52 20 52 30 2c 5b 52 30 | 5d 3a 53 54 52 20 52 30 |R R0,[R0|]:STR R0|
|000013a0| 2c 58 63 6f 73 20 3b 20 | 61 6e 67 6c 65 20 58 0d |,Xcos ; |angle X.|
|000013b0| 06 a4 47 4c 44 52 20 52 | 30 2c 61 6e 67 6c 65 79 |..GLDR R|0,angley|
|000013c0| 3a 41 44 44 20 52 30 2c | 6e 65 67 2c 52 30 2c 41 |:ADD R0,|neg,R0,A|
|000013d0| 53 4c 23 32 3a 4c 44 52 | 20 52 30 2c 5b 52 30 5d |SL#2:LDR| R0,[R0]|
|000013e0| 3a 53 54 52 20 52 30 2c | 59 63 6f 73 20 3b 20 61 |:STR R0,|Ycos ; a|
|000013f0| 6e 67 6c 65 20 59 0d 06 | ae 47 4c 44 52 20 52 30 |ngle Y..|.GLDR R0|
|00001400| 2c 61 6e 67 6c 65 7a 3a | 41 44 44 20 52 30 2c 6e |,anglez:|ADD R0,n|
|00001410| 65 67 2c 52 30 2c 41 53 | 4c 23 32 3a 4c 44 52 20 |eg,R0,AS|L#2:LDR |
|00001420| 52 30 2c 5b 52 30 5d 3a | 53 54 52 20 52 30 2c 5a |R0,[R0]:|STR R0,Z|
|00001430| 63 6f 73 20 3b 20 61 6e | 67 6c 65 20 5a 0d 06 b8 |cos ; an|gle Z...|
|00001440| 04 0d 06 c2 2e 4c 44 52 | 20 6e 75 6d 31 2c 5a 73 |.....LDR| num1,Zs|
|00001450| 69 6e 3a 52 53 42 20 6e | 75 6d 31 2c 6e 75 6d 31 |in:RSB n|um1,num1|
|00001460| 2c 23 31 3a 53 54 52 20 | 6e 75 6d 31 2c 76 61 0d |,#1:STR |num1,va.|
|00001470| 06 cc 1d 4c 44 52 20 6e | 75 6d 31 2c 5a 63 6f 73 |...LDR n|um1,Zcos|
|00001480| 3a 53 54 52 20 6e 75 6d | 31 2c 76 62 0d 06 d6 36 |:STR num|1,vb...6|
|00001490| 4c 44 52 20 6e 75 6d 31 | 2c 5a 63 6f 73 3a 52 53 |LDR num1|,Zcos:RS|
|000014a0| 42 20 6e 75 6d 31 2c 6e | 75 6d 31 2c 23 31 3a 4c |B num1,n|um1,#1:L|
|000014b0| 44 52 20 6e 75 6d 32 2c | 58 63 6f 73 3a a4 6d 75 |DR num2,|Xcos:.mu|
|000014c0| 6c 74 0d 06 e0 20 4d 4f | 56 20 61 6e 73 2c 61 6e |lt... MO|V ans,an|
|000014d0| 73 2c 41 53 52 23 37 3a | 53 54 52 20 61 6e 73 2c |s,ASR#7:|STR ans,|
|000014e0| 76 65 0d 06 ea 36 4c 44 | 52 20 6e 75 6d 31 2c 5a |ve...6LD|R num1,Z|
|000014f0| 73 69 6e 3a 52 53 42 20 | 6e 75 6d 31 2c 6e 75 6d |sin:RSB |num1,num|
|00001500| 31 2c 23 31 3a 4c 44 52 | 20 6e 75 6d 32 2c 58 63 |1,#1:LDR| num2,Xc|
|00001510| 6f 73 3a a4 6d 75 6c 74 | 0d 06 f4 20 4d 4f 56 20 |os:.mult|... MOV |
|00001520| 61 6e 73 2c 61 6e 73 2c | 41 53 52 23 37 3a 53 54 |ans,ans,|ASR#7:ST|
|00001530| 52 20 61 6e 73 2c 76 66 | 0d 06 fe 1d 4c 44 52 20 |R ans,vf|....LDR |
|00001540| 6e 75 6d 31 2c 58 73 69 | 6e 3a 53 54 52 20 6e 75 |num1,Xsi|n:STR nu|
|00001550| 6d 31 2c 76 67 0d 07 08 | 36 4c 44 52 20 6e 75 6d |m1,vg...|6LDR num|
|00001560| 31 2c 5a 63 6f 73 3a 52 | 53 42 20 6e 75 6d 31 2c |1,Zcos:R|SB num1,|
|00001570| 6e 75 6d 31 2c 23 31 3a | 4c 44 52 20 6e 75 6d 32 |num1,#1:|LDR num2|
|00001580| 2c 58 73 69 6e 3a a4 6d | 75 6c 74 0d 07 12 20 4d |,Xsin:.m|ult... M|
|00001590| 4f 56 20 61 6e 73 2c 61 | 6e 73 2c 41 53 52 23 37 |OV ans,a|ns,ASR#7|
|000015a0| 3a 53 54 52 20 61 6e 73 | 2c 76 69 0d 07 1c 36 4c |:STR ans|,vi...6L|
|000015b0| 44 52 20 6e 75 6d 31 2c | 5a 73 69 6e 3a 52 53 42 |DR num1,|Zsin:RSB|
|000015c0| 20 6e 75 6d 31 2c 6e 75 | 6d 31 2c 23 31 3a 4c 44 | num1,nu|m1,#1:LD|
|000015d0| 52 20 6e 75 6d 32 2c 58 | 73 69 6e 3a a4 6d 75 6c |R num2,X|sin:.mul|
|000015e0| 74 0d 07 26 20 4d 4f 56 | 20 61 6e 73 2c 61 6e 73 |t..& MOV| ans,ans|
|000015f0| 2c 41 53 52 23 37 3a 53 | 54 52 20 61 6e 73 2c 76 |,ASR#7:S|TR ans,v|
|00001600| 6a 0d 07 30 2e 4c 44 52 | 20 6e 75 6d 31 2c 58 63 |j..0.LDR| num1,Xc|
|00001610| 6f 73 3a 52 53 42 20 6e | 75 6d 31 2c 6e 75 6d 31 |os:RSB n|um1,num1|
|00001620| 2c 23 31 3a 53 54 52 20 | 6e 75 6d 31 2c 76 6b 0d |,#1:STR |num1,vk.|
|00001630| 07 3a 45 4c 44 52 20 50 | 43 2c 72 65 74 75 72 6e |.:ELDR P|C,return|
|00001640| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001650| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001660| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 72 65 | | ; re|
|00001670| 74 75 72 6e 0d 07 44 04 | 0d 07 4e 04 0d 07 58 09 |turn..D.|..N...X.|
|00001680| 2e 6c 69 6e 65 0d 07 62 | 1c 20 53 54 4d 45 41 20 |.line..b|. STMEA |
|00001690| 52 31 33 21 2c 7b 52 30 | 2d 52 31 32 2c 52 31 34 |R13!,{R0|-R12,R14|
|000016a0| 7d 0d 07 6c 2c 20 4c 44 | 52 20 78 2c 41 58 3a 4c |}..l, LD|R x,AX:L|
|000016b0| 44 52 20 78 31 2c 41 58 | 31 3a 4c 44 52 20 79 2c |DR x1,AX|1:LDR y,|
|000016c0| 41 59 3a 4c 44 52 20 79 | 31 2c 41 59 31 0d 07 76 |AY:LDR y|1,AY1..v|
|000016d0| 11 20 4d 4f 56 20 63 6f | 6c 2c 23 32 35 35 0d 07 |. MOV co|l,#255..|
|000016e0| 80 0d 20 43 4d 50 20 78 | 2c 78 31 0d 07 8a 2a 20 |.. CMP x|,x1...* |
|000016f0| 4d 4f 56 47 54 20 74 65 | 6d 70 2c 78 31 3a 4d 4f |MOVGT te|mp,x1:MO|
|00001700| 56 47 54 20 78 31 2c 78 | 3a 4d 4f 56 47 54 20 78 |VGT x1,x|:MOVGT x|
|00001710| 2c 74 65 6d 70 0d 07 94 | 2a 20 4d 4f 56 47 54 20 |,temp...|* MOVGT |
|00001720| 74 65 6d 70 2c 79 31 3a | 4d 4f 56 47 54 20 79 31 |temp,y1:|MOVGT y1|
|00001730| 2c 79 3a 4d 4f 56 47 54 | 20 79 2c 74 65 6d 70 0d |,y:MOVGT| y,temp.|
|00001740| 07 9e 0e 20 4d 4f 56 20 | 52 30 2c 23 30 0d 07 a8 |... MOV |R0,#0...|
|00001750| 3d 20 43 4d 50 20 78 2c | 23 33 32 30 3a 4d 4f 56 |= CMP x,|#320:MOV|
|00001760| 43 53 20 52 30 2c 23 31 | 3a 42 43 53 20 6e 6f 74 |CS R0,#1|:BCS not|
|00001770| 6f 66 66 3a 43 4d 50 20 | 79 2c 23 32 35 35 3a 4d |off:CMP |y,#255:M|
|00001780| 4f 56 43 53 20 52 30 2c | 23 31 0d 07 b2 0b 2e 6e |OVCS R0,|#1.....n|
|00001790| 6f 74 6f 66 66 0d 07 bc | 46 20 43 4d 50 20 78 31 |otoff...|F CMP x1|
|000017a0| 2c 23 33 32 30 3a 41 44 | 44 43 53 20 52 30 2c 52 |,#320:AD|DCS R0,R|
|000017b0| 30 2c 23 31 3a 42 43 53 | 20 6e 6f 74 6f 66 66 31 |0,#1:BCS| notoff1|
|000017c0| 3a 43 4d 50 20 79 31 2c | 23 32 35 35 3a 41 44 44 |:CMP y1,|#255:ADD|
|000017d0| 43 53 20 52 30 2c 52 30 | 2c 23 31 0d 07 c6 0c 2e |CS R0,R0|,#1.....|
|000017e0| 6e 6f 74 6f 66 66 31 0d | 07 d0 27 20 43 4d 50 20 |notoff1.|..' CMP |
|000017f0| 52 30 2c 23 32 3a 4c 44 | 4d 45 51 45 41 20 52 31 |R0,#2:LD|MEQEA R1|
|00001800| 33 21 2c 7b 52 30 2d 52 | 31 32 2c 50 43 7d 0d 07 |3!,{R0-R|12,PC}..|
|00001810| da 43 20 4d 4f 56 20 52 | 30 2c 23 33 32 30 3a 4d |.C MOV R|0,#320:M|
|00001820| 55 4c 20 6d 2c 52 30 2c | 79 3a 41 44 44 20 6d 2c |UL m,R0,|y:ADD m,|
|00001830| 6d 2c 78 3a 4c 44 52 20 | 74 65 6d 70 2c 73 63 72 |m,x:LDR |temp,scr|
|00001840| 61 64 64 31 3a 41 44 44 | 20 6d 2c 6d 2c 74 65 6d |add1:ADD| m,m,tem|
|00001850| 70 0d 07 e4 20 20 53 55 | 42 53 20 78 6f 2c 78 2c |p... SU|BS xo,x,|
|00001860| 78 31 3a 52 53 42 4d 49 | 20 78 6f 2c 78 6f 2c 23 |x1:RSBMI| xo,xo,#|
|00001870| 31 0d 07 ee 20 20 53 55 | 42 53 20 79 6f 2c 79 2c |1... SU|BS yo,y,|
|00001880| 79 31 3a 52 53 42 4d 49 | 20 79 6f 2c 79 6f 2c 23 |y1:RSBMI| yo,yo,#|
|00001890| 31 0d 07 f8 04 0d 08 02 | 19 20 43 4d 50 20 78 2c |1.......|. CMP x,|
|000018a0| 23 33 32 30 3a 42 43 53 | 20 6c 69 6e 65 32 0d 08 |#320:BCS| line2..|
|000018b0| 0c 19 20 43 4d 50 20 79 | 2c 23 32 35 35 3a 42 43 |.. CMP y|,#255:BC|
|000018c0| 53 20 6c 69 6e 65 32 0d | 08 16 1a 20 43 4d 50 20 |S line2.|... CMP |
|000018d0| 78 31 2c 23 33 32 30 3a | 42 43 53 20 6c 69 6e 65 |x1,#320:|BCS line|
|000018e0| 32 0d 08 20 1a 20 43 4d | 50 20 79 31 2c 23 32 35 |2.. . CM|P y1,#25|
|000018f0| 35 3a 42 43 53 20 6c 69 | 6e 65 32 0d 08 2a 04 0d |5:BCS li|ne2..*..|
|00001900| 08 34 04 0d 08 3e 17 20 | 43 4d 50 20 79 31 2c 79 |.4...>. |CMP y1,y|
|00001910| 3a 42 43 53 20 64 6f 77 | 6e 69 0d 08 48 1c 20 43 |:BCS dow|ni..H. C|
|00001920| 4d 50 20 78 6f 2c 79 6f | 3a 42 43 43 20 64 31 33 |MP xo,yo|:BCC d13|
|00001930| 35 5f 31 38 30 69 0d 08 | 52 04 0d 08 5c 0d 2e 64 |5_180i..|R...\..d|
|00001940| 39 30 5f 31 33 35 69 0d | 08 66 3f 20 4d 4f 56 20 |90_135i.|.f? MOV |
|00001950| 61 25 2c 78 6f 3a 4d 4f | 56 20 62 25 2c 79 6f 3a |a%,xo:MO|V b%,yo:|
|00001960| 53 55 42 20 62 25 2c 62 | 25 2c 78 6f 3a 53 55 42 |SUB b%,b|%,xo:SUB|
|00001970| 20 62 25 2c 62 25 2c 23 | 31 3a 53 55 42 20 61 25 | b%,b%,#|1:SUB a%|
|00001980| 2c 61 25 2c 23 31 0d 08 | 70 0d 2e 6c 39 30 5f 31 |,a%,#1..|p..l90_1|
|00001990| 33 35 69 0d 08 7a 14 20 | 53 54 52 42 20 63 6f 6c |35i..z. |STRB col|
|000019a0| 2c 5b 6d 5d 2c 23 31 0d | 08 84 2b 20 53 55 42 53 |,[m],#1.|..+ SUBS|
|000019b0| 20 61 25 2c 61 25 2c 23 | 31 3a 4c 44 4d 4d 49 45 | a%,a%,#|1:LDMMIE|
|000019c0| 41 20 52 31 33 21 2c 7b | 52 30 2d 52 31 32 2c 50 |A R13!,{|R0-R12,P|
|000019d0| 43 7d 0d 08 8e 30 20 41 | 44 44 53 20 62 25 2c 62 |C}...0 A|DDS b%,b|
|000019e0| 25 2c 79 6f 3a 53 55 42 | 50 4c 20 6d 2c 6d 2c 23 |%,yo:SUB|PL m,m,#|
|000019f0| 33 32 30 3a 53 55 42 50 | 4c 20 62 25 2c 62 25 2c |320:SUBP|L b%,b%,|
|00001a00| 78 6f 0d 08 98 0f 20 42 | 20 6c 39 30 5f 31 33 35 |xo.... B| l90_135|
|00001a10| 69 0d 08 a2 04 0d 08 ac | 0e 2e 64 31 33 35 5f 31 |i.......|..d135_1|
|00001a20| 38 30 69 0d 08 b6 3f 20 | 4d 4f 56 20 61 25 2c 79 |80i...? |MOV a%,y|
|00001a30| 6f 3a 4d 4f 56 20 62 25 | 2c 78 6f 3a 53 55 42 20 |o:MOV b%|,xo:SUB |
|00001a40| 62 25 2c 62 25 2c 79 6f | 3a 53 55 42 20 62 25 2c |b%,b%,yo|:SUB b%,|
|00001a50| 62 25 2c 23 31 3a 53 55 | 42 20 61 25 2c 61 25 2c |b%,#1:SU|B a%,a%,|
|00001a60| 23 31 0d 08 c0 0e 2e 6c | 31 33 35 5f 31 38 30 69 |#1.....l|135_180i|
|00001a70| 0d 08 ca 17 20 53 54 52 | 42 20 63 6f 6c 2c 5b 6d |.... STR|B col,[m|
|00001a80| 5d 2c 23 2d 33 32 30 0d | 08 d4 2b 20 53 55 42 53 |],#-320.|..+ SUBS|
|00001a90| 20 61 25 2c 61 25 2c 23 | 31 3a 4c 44 4d 4d 49 45 | a%,a%,#|1:LDMMIE|
|00001aa0| 41 20 52 31 33 21 2c 7b | 52 30 2d 52 31 32 2c 50 |A R13!,{|R0-R12,P|
|00001ab0| 43 7d 0d 08 de 2e 20 41 | 44 44 53 20 62 25 2c 62 |C}.... A|DDS b%,b|
|00001ac0| 25 2c 78 6f 3a 41 44 44 | 50 4c 20 6d 2c 6d 2c 23 |%,xo:ADD|PL m,m,#|
|00001ad0| 31 3a 53 55 42 50 4c 20 | 62 25 2c 62 25 2c 79 6f |1:SUBPL |b%,b%,yo|
|00001ae0| 0d 08 e8 10 20 42 20 6c | 31 33 35 5f 31 38 30 69 |.... B l|135_180i|
|00001af0| 0d 08 f2 04 0d 08 fc 0a | 2e 64 6f 77 6e 69 0d 09 |........|.downi..|
|00001b00| 06 19 20 43 4d 50 20 78 | 6f 2c 79 6f 3a 42 43 43 |.. CMP x|o,yo:BCC|
|00001b10| 20 64 30 5f 34 35 69 0d | 09 10 0c 2e 64 34 35 5f | d0_45i.|....d45_|
|00001b20| 39 30 69 0d 09 1a 3f 20 | 4d 4f 56 20 61 25 2c 78 |90i...? |MOV a%,x|
|00001b30| 6f 3a 4d 4f 56 20 62 25 | 2c 79 6f 3a 53 55 42 20 |o:MOV b%|,yo:SUB |
|00001b40| 62 25 2c 62 25 2c 78 6f | 3a 53 55 42 20 62 25 2c |b%,b%,xo|:SUB b%,|
|00001b50| 62 25 2c 23 31 3a 53 55 | 42 20 61 25 2c 61 25 2c |b%,#1:SU|B a%,a%,|
|00001b60| 23 31 0d 09 24 0c 2e 6c | 34 35 5f 39 30 69 0d 09 |#1..$..l|45_90i..|
|00001b70| 2e 14 20 53 54 52 42 20 | 63 6f 6c 2c 5b 6d 5d 2c |.. STRB |col,[m],|
|00001b80| 23 31 0d 09 38 2b 20 53 | 55 42 53 20 61 25 2c 61 |#1..8+ S|UBS a%,a|
|00001b90| 25 2c 23 31 3a 4c 44 4d | 4d 49 45 41 20 52 31 33 |%,#1:LDM|MIEA R13|
|00001ba0| 21 2c 7b 52 30 2d 52 31 | 32 2c 50 43 7d 0d 09 42 |!,{R0-R1|2,PC}..B|
|00001bb0| 30 20 41 44 44 53 20 62 | 25 2c 62 25 2c 79 6f 3a |0 ADDS b|%,b%,yo:|
|00001bc0| 41 44 44 50 4c 20 6d 2c | 6d 2c 23 33 32 30 3a 53 |ADDPL m,|m,#320:S|
|00001bd0| 55 42 50 4c 20 62 25 2c | 62 25 2c 78 6f 0d 09 4c |UBPL b%,|b%,xo..L|
|00001be0| 0e 20 42 20 6c 34 35 5f | 39 30 69 0d 09 56 04 0d |. B l45_|90i..V..|
|00001bf0| 09 60 0b 2e 64 30 5f 34 | 35 69 0d 09 6a 3f 20 4d |.`..d0_4|5i..j? M|
|00001c00| 4f 56 20 61 25 2c 79 6f | 3a 4d 4f 56 20 62 25 2c |OV a%,yo|:MOV b%,|
|00001c10| 78 6f 3a 53 55 42 20 62 | 25 2c 62 25 2c 79 6f 3a |xo:SUB b|%,b%,yo:|
|00001c20| 53 55 42 20 62 25 2c 62 | 25 2c 23 31 3a 53 55 42 |SUB b%,b|%,#1:SUB|
|00001c30| 20 61 25 2c 61 25 2c 23 | 31 0d 09 74 0b 2e 6c 30 | a%,a%,#|1..t..l0|
|00001c40| 5f 34 35 69 0d 09 7e 16 | 20 53 54 52 42 20 63 6f |_45i..~.| STRB co|
|00001c50| 6c 2c 5b 6d 5d 2c 23 33 | 32 30 0d 09 88 2b 20 53 |l,[m],#3|20...+ S|
|00001c60| 55 42 53 20 61 25 2c 61 | 25 2c 23 31 3a 4c 44 4d |UBS a%,a|%,#1:LDM|
|00001c70| 4d 49 45 41 20 52 31 33 | 21 2c 7b 52 30 2d 52 31 |MIEA R13|!,{R0-R1|
|00001c80| 32 2c 50 43 7d 0d 09 92 | 2e 20 41 44 44 53 20 62 |2,PC}...|. ADDS b|
|00001c90| 25 2c 62 25 2c 78 6f 3a | 41 44 44 50 4c 20 6d 2c |%,b%,xo:|ADDPL m,|
|00001ca0| 6d 2c 23 31 3a 53 55 42 | 50 4c 20 62 25 2c 62 25 |m,#1:SUB|PL b%,b%|
|00001cb0| 2c 79 6f 0d 09 9c 0d 20 | 42 20 6c 30 5f 34 35 69 |,yo.... |B l0_45i|
|00001cc0| 0d 09 a6 04 0d 09 b0 04 | 0d 09 ba 0a 2e 6c 69 6e |........|.....lin|
|00001cd0| 65 32 0d 09 c4 16 20 43 | 4d 50 20 79 31 2c 79 3a |e2.... C|MP y1,y:|
|00001ce0| 42 47 45 20 64 6f 77 6e | 0d 09 ce 1b 20 43 4d 50 |BGE down|.... CMP|
|00001cf0| 20 78 6f 2c 79 6f 3a 42 | 4c 54 20 64 31 33 35 5f | xo,yo:B|LT d135_|
|00001d00| 31 38 30 0d 09 d8 04 0d | 09 e2 0c 2e 64 39 30 5f |180.....|....d90_|
|00001d10| 31 33 35 0d 09 ec 3f 20 | 4d 4f 56 20 61 25 2c 78 |135...? |MOV a%,x|
|00001d20| 6f 3a 4d 4f 56 20 62 25 | 2c 79 6f 3a 53 55 42 20 |o:MOV b%|,yo:SUB |
|00001d30| 62 25 2c 62 25 2c 78 6f | 3a 53 55 42 20 62 25 2c |b%,b%,xo|:SUB b%,|
|00001d40| 62 25 2c 23 31 3a 53 55 | 42 20 61 25 2c 61 25 2c |b%,#1:SU|B a%,a%,|
|00001d50| 23 31 0d 09 f6 0c 2e 6c | 39 30 5f 31 33 35 0d 0a |#1.....l|90_135..|
|00001d60| 00 19 20 43 4d 50 20 78 | 2c 23 33 32 30 3a 42 43 |.. CMP x|,#320:BC|
|00001d70| 53 20 6d 69 73 73 70 0d | 0a 0a 1e 20 43 4d 50 20 |S missp.|... CMP |
|00001d80| 79 2c 23 32 35 35 3a 53 | 54 52 43 43 42 20 63 6f |y,#255:S|TRCCB co|
|00001d90| 6c 2c 5b 6d 5d 0d 0a 14 | 20 2e 6d 69 73 73 70 20 |l,[m]...| .missp |
|00001da0| 41 44 44 20 6d 2c 6d 2c | 23 31 3a 41 44 44 20 78 |ADD m,m,|#1:ADD x|
|00001db0| 2c 78 2c 23 31 0d 0a 1e | 2b 20 53 55 42 53 20 61 |,x,#1...|+ SUBS a|
|00001dc0| 25 2c 61 25 2c 23 31 3a | 4c 44 4d 4d 49 45 41 20 |%,a%,#1:|LDMMIEA |
|00001dd0| 52 31 33 21 2c 7b 52 30 | 2d 52 31 32 2c 50 43 7d |R13!,{R0|-R12,PC}|
|00001de0| 0d 0a 28 3d 20 41 44 44 | 53 20 62 25 2c 62 25 2c |..(= ADD|S b%,b%,|
|00001df0| 79 6f 3a 53 55 42 50 4c | 20 6d 2c 6d 2c 23 33 32 |yo:SUBPL| m,m,#32|
|00001e00| 30 3a 53 55 42 50 4c 20 | 62 25 2c 62 25 2c 78 6f |0:SUBPL |b%,b%,xo|
|00001e10| 3a 53 55 42 50 4c 20 79 | 2c 79 2c 23 31 0d 0a 32 |:SUBPL y|,y,#1..2|
|00001e20| 0e 20 42 20 6c 39 30 5f | 31 33 35 0d 0a 3c 04 0d |. B l90_|135..<..|
|00001e30| 0a 46 0d 2e 64 31 33 35 | 5f 31 38 30 0d 0a 50 3f |.F..d135|_180..P?|
|00001e40| 20 4d 4f 56 20 61 25 2c | 79 6f 3a 4d 4f 56 20 62 | MOV a%,|yo:MOV b|
|00001e50| 25 2c 78 6f 3a 53 55 42 | 20 62 25 2c 62 25 2c 79 |%,xo:SUB| b%,b%,y|
|00001e60| 6f 3a 53 55 42 20 62 25 | 2c 62 25 2c 23 31 3a 53 |o:SUB b%|,b%,#1:S|
|00001e70| 55 42 20 61 25 2c 61 25 | 2c 23 31 0d 0a 5a 0d 2e |UB a%,a%|,#1..Z..|
|00001e80| 6c 31 33 35 5f 31 38 30 | 0d 0a 64 1a 20 43 4d 50 |l135_180|..d. CMP|
|00001e90| 20 79 2c 23 32 35 35 3a | 42 43 53 20 6d 69 73 73 | y,#255:|BCS miss|
|00001ea0| 70 31 0d 0a 6e 1e 20 43 | 4d 50 20 78 2c 23 33 32 |p1..n. C|MP x,#32|
|00001eb0| 30 3a 53 54 52 43 43 42 | 20 63 6f 6c 2c 5b 6d 5d |0:STRCCB| col,[m]|
|00001ec0| 0d 0a 78 23 2e 6d 69 73 | 73 70 31 20 53 55 42 20 |..x#.mis|sp1 SUB |
|00001ed0| 6d 2c 6d 2c 23 33 32 30 | 3a 53 55 42 20 79 2c 79 |m,m,#320|:SUB y,y|
|00001ee0| 2c 23 31 0d 0a 82 2b 20 | 53 55 42 53 20 61 25 2c |,#1...+ |SUBS a%,|
|00001ef0| 61 25 2c 23 31 3a 4c 44 | 4d 4d 49 45 41 20 52 31 |a%,#1:LD|MMIEA R1|
|00001f00| 33 21 2c 7b 52 30 2d 52 | 31 32 2c 50 43 7d 0d 0a |3!,{R0-R|12,PC}..|
|00001f10| 8c 3b 20 41 44 44 53 20 | 62 25 2c 62 25 2c 78 6f |.; ADDS |b%,b%,xo|
|00001f20| 3a 41 44 44 50 4c 20 6d | 2c 6d 2c 23 31 3a 53 55 |:ADDPL m|,m,#1:SU|
|00001f30| 42 50 4c 20 62 25 2c 62 | 25 2c 79 6f 3a 41 44 44 |BPL b%,b|%,yo:ADD|
|00001f40| 50 4c 20 78 2c 78 2c 23 | 31 0d 0a 96 0f 20 42 20 |PL x,x,#|1.... B |
|00001f50| 6c 31 33 35 5f 31 38 30 | 0d 0a a0 04 0d 0a aa 09 |l135_180|........|
|00001f60| 2e 64 6f 77 6e 0d 0a b4 | 18 20 43 4d 50 20 78 6f |.down...|. CMP xo|
|00001f70| 2c 79 6f 3a 42 4c 54 20 | 64 30 5f 34 35 0d 0a be |,yo:BLT |d0_45...|
|00001f80| 0b 2e 64 34 35 5f 39 30 | 0d 0a c8 3f 20 4d 4f 56 |..d45_90|...? MOV|
|00001f90| 20 61 25 2c 78 6f 3a 4d | 4f 56 20 62 25 2c 79 6f | a%,xo:M|OV b%,yo|
|00001fa0| 3a 53 55 42 20 62 25 2c | 62 25 2c 78 6f 3a 53 55 |:SUB b%,|b%,xo:SU|
|00001fb0| 42 20 62 25 2c 62 25 2c | 23 31 3a 53 55 42 20 61 |B b%,b%,|#1:SUB a|
|00001fc0| 25 2c 61 25 2c 23 31 0d | 0a d2 0b 2e 6c 34 35 5f |%,a%,#1.|....l45_|
|00001fd0| 39 30 0d 0a dc 1a 20 43 | 4d 50 20 78 2c 23 33 32 |90.... C|MP x,#32|
|00001fe0| 30 3a 42 43 53 20 6d 69 | 73 73 70 32 0d 0a e6 1e |0:BCS mi|ssp2....|
|00001ff0| 20 43 4d 50 20 79 2c 23 | 32 35 35 3a 53 54 52 43 | CMP y,#|255:STRC|
|00002000| 43 42 20 63 6f 6c 2c 5b | 6d 5d 0d 0a f0 21 2e 6d |CB col,[|m]...!.m|
|00002010| 69 73 73 70 32 20 41 44 | 44 20 6d 2c 6d 2c 23 31 |issp2 AD|D m,m,#1|
|00002020| 3a 41 44 44 20 78 2c 78 | 2c 23 31 0d 0a fa 2b 20 |:ADD x,x|,#1...+ |
|00002030| 53 55 42 53 20 61 25 2c | 61 25 2c 23 31 3a 4c 44 |SUBS a%,|a%,#1:LD|
|00002040| 4d 4d 49 45 41 20 52 31 | 33 21 2c 7b 52 30 2d 52 |MMIEA R1|3!,{R0-R|
|00002050| 31 32 2c 50 43 7d 0d 0b | 04 3d 20 41 44 44 53 20 |12,PC}..|.= ADDS |
|00002060| 62 25 2c 62 25 2c 79 6f | 3a 41 44 44 50 4c 20 6d |b%,b%,yo|:ADDPL m|
|00002070| 2c 6d 2c 23 33 32 30 3a | 53 55 42 50 4c 20 62 25 |,m,#320:|SUBPL b%|
|00002080| 2c 62 25 2c 78 6f 3a 41 | 44 44 50 4c 20 79 2c 79 |,b%,xo:A|DDPL y,y|
|00002090| 2c 23 31 0d 0b 0e 0d 20 | 42 20 6c 34 35 5f 39 30 |,#1.... |B l45_90|
|000020a0| 0d 0b 18 04 0d 0b 22 0a | 2e 64 30 5f 34 35 0d 0b |......".|.d0_45..|
|000020b0| 2c 3f 20 4d 4f 56 20 61 | 25 2c 79 6f 3a 4d 4f 56 |,? MOV a|%,yo:MOV|
|000020c0| 20 62 25 2c 78 6f 3a 53 | 55 42 20 62 25 2c 62 25 | b%,xo:S|UB b%,b%|
|000020d0| 2c 79 6f 3a 53 55 42 20 | 62 25 2c 62 25 2c 23 31 |,yo:SUB |b%,b%,#1|
|000020e0| 3a 53 55 42 20 61 25 2c | 61 25 2c 23 31 0d 0b 36 |:SUB a%,|a%,#1..6|
|000020f0| 0a 2e 6c 30 5f 34 35 0d | 0b 40 1a 20 43 4d 50 20 |..l0_45.|.@. CMP |
|00002100| 79 2c 23 32 35 35 3a 42 | 43 53 20 6d 69 73 73 70 |y,#255:B|CS missp|
|00002110| 33 0d 0b 4a 1e 20 43 4d | 50 20 78 2c 23 33 32 30 |3..J. CM|P x,#320|
|00002120| 3a 53 54 52 43 43 42 20 | 63 6f 6c 2c 5b 6d 5d 0d |:STRCCB |col,[m].|
|00002130| 0b 54 23 2e 6d 69 73 73 | 70 33 20 41 44 44 20 6d |.T#.miss|p3 ADD m|
|00002140| 2c 6d 2c 23 33 32 30 3a | 41 44 44 20 79 2c 79 2c |,m,#320:|ADD y,y,|
|00002150| 23 31 0d 0b 5e 2b 20 53 | 55 42 53 20 61 25 2c 61 |#1..^+ S|UBS a%,a|
|00002160| 25 2c 23 31 3a 4c 44 4d | 4d 49 45 41 20 52 31 33 |%,#1:LDM|MIEA R13|
|00002170| 21 2c 7b 52 30 2d 52 31 | 32 2c 50 43 7d 0d 0b 68 |!,{R0-R1|2,PC}..h|
|00002180| 3b 20 41 44 44 53 20 62 | 25 2c 62 25 2c 78 6f 3a |; ADDS b|%,b%,xo:|
|00002190| 41 44 44 50 4c 20 6d 2c | 6d 2c 23 31 3a 53 55 42 |ADDPL m,|m,#1:SUB|
|000021a0| 50 4c 20 62 25 2c 62 25 | 2c 79 6f 3a 41 44 44 50 |PL b%,b%|,yo:ADDP|
|000021b0| 4c 20 78 2c 78 2c 23 31 | 0d 0b 72 0c 20 42 20 6c |L x,x,#1|..r. B l|
|000021c0| 30 5f 34 35 0d 0b 7c 04 | 0d 0b 86 04 0d 0b 90 3c |0_45..|.|.......<|
|000021d0| 2e 70 6c 6f 74 75 70 20 | 20 20 20 20 20 20 20 20 |.plotup | |
|000021e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000021f0| 20 20 20 20 20 20 20 20 | 20 20 3b 20 4d 61 69 6e | | ; Main|
|00002200| 20 72 6f 75 74 69 6e 65 | 0d 0b 9a 49 53 54 52 20 | routine|...ISTR |
|00002210| 52 31 33 2c 72 31 33 20 | 20 20 20 20 20 20 20 20 |R13,r13 | |
|00002220| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002230| 20 20 20 20 20 20 3b 20 | 73 74 6f 72 65 20 62 61 | ; |store ba|
|00002240| 73 69 63 20 73 74 61 63 | 6b 20 70 6f 69 6e 74 65 |sic stac|k pointe|
|00002250| 72 0d 0b a4 45 4c 44 52 | 20 52 31 33 2c 73 74 70 |r...ELDR| R13,stp|
|00002260| 3a 53 54 4d 45 41 20 52 | 31 33 21 2c 7b 52 30 2d |:STMEA R|13!,{R0-|
|00002270| 52 31 32 2c 52 31 34 7d | 20 20 20 20 20 20 20 3b |R12,R14}| ;|
|00002280| 20 67 65 74 20 6e 65 77 | 20 73 74 61 63 6b 20 70 | get new| stack p|
|00002290| 6f 69 6e 74 65 72 0d 0b | ae 3e 42 4c 20 63 6f 6e |ointer..|.>BL con|
|000022a0| 76 65 72 74 5f 61 6e 67 | 6c 65 73 20 20 20 20 20 |vert_ang|les |
|000022b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000022c0| 20 20 20 20 3b 20 63 6f | 6e 76 65 72 74 20 61 6e | ; co|nvert an|
|000022d0| 67 6c 65 73 0d 0b b8 3c | 42 4c 20 63 6c 65 61 72 |gles...<|BL clear|
|000022e0| 74 61 62 6c 65 20 20 20 | 20 20 20 20 20 20 20 20 |table | |
|000022f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002300| 20 20 3b 20 63 6c 65 61 | 72 20 74 61 62 6c 65 73 | ; clea|r tables|
|00002310| 0d 0b c2 2f 4d 4f 56 20 | 63 6f 75 6e 74 2c 23 30 |.../MOV |count,#0|
|00002320| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002330| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 0d | | ;.|
|00002340| 0b cc 2f 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |../ | |
|00002350| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002360| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 0d 0b | | ;..|
|00002370| d6 3d 4d 4f 56 20 52 30 | 2c 23 31 39 3a 53 57 49 |.=MOV R0|,#19:SWI|
|00002380| 20 22 4f 53 5f 42 79 74 | 65 22 20 20 20 20 20 20 | "OS_Byt|e" |
|00002390| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 77 61 | | ; wa|
|000023a0| 69 74 20 66 6f 72 20 73 | 79 6e 63 0d 0b e0 3e 4d |it for s|ync...>M|
|000023b0| 4f 56 20 52 30 2c 23 31 | 31 33 3a 4c 44 52 20 52 |OV R0,#1|13:LDR R|
|000023c0| 31 2c 73 63 72 65 65 6e | 20 20 20 20 20 20 20 20 |1,screen| |
|000023d0| 20 20 20 20 20 20 20 20 | 20 3b 20 63 68 61 6e 67 | | ; chang|
|000023e0| 65 20 73 63 72 65 65 6e | 73 0d 0b ea 2d 82 20 52 |e screen|s...-. R|
|000023f0| 31 2c 52 31 2c 23 33 3a | 53 54 52 20 52 31 2c 73 |1,R1,#3:|STR R1,s|
|00002400| 63 72 65 65 6e 3a 53 57 | 49 20 22 4f 53 5f 42 79 |creen:SW|I "OS_By|
|00002410| 74 65 22 20 20 3b 0d 0b | f4 1d 4d 4f 56 20 52 30 |te" ;..|..MOV R0|
|00002420| 2c 23 31 31 32 3a 53 57 | 49 20 22 4f 53 5f 42 79 |,#112:SW|I "OS_By|
|00002430| 74 65 22 0d 0b fe 42 42 | 4c 20 73 63 65 6e 65 20 |te"...BB|L scene |
|00002440| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002450| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002460| 20 3b 20 72 65 73 74 6f | 72 65 20 62 61 63 6b 20 | ; resto|re back |
|00002470| 73 63 65 6e 65 0d 0c 08 | 46 4c 44 52 20 52 30 2c |scene...|FLDR R0,|
|00002480| 73 63 72 61 64 64 3a 53 | 54 52 20 52 30 2c 73 63 |scradd:S|TR R0,sc|
|00002490| 72 61 64 64 31 20 20 20 | 20 20 20 20 20 20 20 20 |radd1 | |
|000024a0| 20 20 20 3b 20 67 65 74 | 20 6e 65 77 20 73 63 72 | ; get| new scr|
|000024b0| 65 65 6e 20 61 64 64 72 | 65 73 73 0d 0c 12 2d 82 |een addr|ess...-.|
|000024c0| 20 52 30 2c 52 30 2c 23 | 26 33 34 30 30 30 3a 53 | R0,R0,#|&34000:S|
|000024d0| 54 52 20 52 30 2c 73 63 | 72 61 64 64 20 20 20 20 |TR R0,sc|radd |
|000024e0| 20 20 20 20 20 20 20 3b | 0d 0c 1c 04 0d 0c 26 04 | ;|......&.|
|000024f0| 0d 0c 30 10 4d 4f 56 20 | 63 6f 75 6e 74 2c 23 30 |..0.MOV |count,#0|
|00002500| 0d 0c 3a 0e 2e 63 68 65 | 63 6b 73 65 65 6e 0d 0c |..:..che|ckseen..|
|00002510| 44 20 4c 44 52 20 52 32 | 2c 73 32 70 3a 4c 44 52 |D LDR R2|,s2p:LDR|
|00002520| 20 52 31 2c 5b 52 32 2c | 63 6f 75 6e 74 5d 0d 0c | R1,[R2,|count]..|
|00002530| 4e 2e 4c 44 52 20 52 32 | 2c 63 78 3a 4c 44 52 20 |N.LDR R2|,cx:LDR |
|00002540| 52 30 2c 5b 52 32 2c 52 | 31 5d 3a 43 4d 50 20 52 |R0,[R2,R|1]:CMP R|
|00002550| 30 2c 23 26 38 30 30 30 | 30 30 30 30 0d 0c 58 40 |0,#&8000|0000..X@|
|00002560| 4c 44 52 43 53 20 52 32 | 2c 63 79 3a 4c 44 52 43 |LDRCS R2|,cy:LDRC|
|00002570| 53 20 6e 75 6d 32 2c 5b | 52 32 2c 52 31 5d 3a 4d |S num2,[|R2,R1]:M|
|00002580| 4f 56 43 53 20 6e 75 6d | 31 2c 52 30 3a 42 43 53 |OVCS num|1,R0:BCS|
|00002590| 20 6d 69 73 73 74 68 69 | 73 6f 6e 65 0d 0c 62 42 | missthi|sone..bB|
|000025a0| 4c 44 52 20 52 32 2c 78 | 70 74 3a 4c 44 52 20 52 |LDR R2,x|pt:LDR R|
|000025b0| 30 2c 5b 52 32 2c 52 31 | 5d 3a 53 54 52 20 52 30 |0,[R2,R1|]:STR R0|
|000025c0| 2c 58 43 25 20 20 20 20 | 20 20 3b 20 73 74 6f 72 |,XC% | ; stor|
|000025d0| 65 20 78 20 63 6f 6f 72 | 64 69 6e 61 74 65 0d 0c |e x coor|dinate..|
|000025e0| 6c 42 4c 44 52 20 52 32 | 2c 79 70 74 3a 4c 44 52 |lBLDR R2|,ypt:LDR|
|000025f0| 20 52 30 2c 5b 52 32 2c | 52 31 5d 3a 53 54 52 20 | R0,[R2,|R1]:STR |
|00002600| 52 30 2c 59 43 25 20 20 | 20 20 20 20 3b 20 73 74 |R0,YC% | ; st|
|00002610| 6f 72 65 20 79 20 63 6f | 6f 72 64 69 6e 61 74 65 |ore y co|ordinate|
|00002620| 0d 0c 76 23 4c 44 52 20 | 52 30 2c 63 6f 75 6e 74 |..v#LDR |R0,count|
|00002630| 6f 66 66 3a 41 44 44 20 | 52 31 2c 63 6f 75 6e 74 |off:ADD |R1,count|
|00002640| 2c 52 30 0d 0c 80 32 4c | 44 52 20 52 30 2c 53 4f |,R0...2L|DR R0,SO|
|00002650| 3a 43 4d 50 20 52 31 2c | 52 30 2c 4c 53 52 23 31 |:CMP R1,|R0,LSR#1|
|00002660| 3a 53 55 42 43 53 20 52 | 31 2c 52 31 2c 52 30 2c |:SUBCS R|1,R1,R0,|
|00002670| 4c 53 52 23 31 0d 0c 8a | 1d 4c 44 52 20 52 32 2c |LSR#1...|.LDR R2,|
|00002680| 73 32 70 3a 4c 44 52 20 | 52 31 2c 5b 52 32 2c 52 |s2p:LDR |R1,[R2,R|
|00002690| 31 5d 0d 0c 94 42 4c 44 | 52 20 52 32 2c 7a 70 74 |1]...BLD|R R2,zpt|
|000026a0| 3a 4c 44 52 20 52 30 2c | 5b 52 32 2c 52 31 5d 3a |:LDR R0,|[R2,R1]:|
|000026b0| 53 54 52 20 52 30 2c 5a | 43 25 20 20 20 20 20 20 |STR R0,Z|C% |
|000026c0| 3b 20 73 74 6f 72 65 20 | 7a 20 63 6f 6f 72 64 69 |; store |z coordi|
|000026d0| 6e 61 74 65 0d 0c 9e 3c | a4 77 6f 72 6b 6f 75 74 |nate...<|.workout|
|000026e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000026f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002700| 20 3b 20 63 6f 6e 76 65 | 72 74 20 74 6f 20 32 64 | ; conve|rt to 2d|
|00002710| 0d 0c a8 22 4c 44 52 20 | 6e 65 67 2c 73 32 70 3a |..."LDR |neg,s2p:|
|00002720| 4c 44 52 20 52 30 2c 5b | 6e 65 67 2c 63 6f 75 6e |LDR R0,[|neg,coun|
|00002730| 74 5d 0d 0c b2 38 4c 44 | 52 20 6e 65 67 2c 63 78 |t]...8LD|R neg,cx|
|00002740| 3a 84 52 20 6e 75 6d 31 | 2c 6e 75 6d 31 2c 23 26 |:.R num1|,num1,#&|
|00002750| 38 30 30 30 30 30 30 30 | 3a 53 54 52 20 6e 75 6d |80000000|:STR num|
|00002760| 31 2c 5b 6e 65 67 2c 52 | 30 5d 0d 0c bc 20 4c 44 |1,[neg,R|0]... LD|
|00002770| 52 20 6e 65 67 2c 63 79 | 3a 53 54 52 20 6e 75 6d |R neg,cy|:STR num|
|00002780| 32 2c 5b 6e 65 67 2c 52 | 30 5d 0d 0c c6 10 2e 6d |2,[neg,R|0].....m|
|00002790| 69 73 73 74 68 69 73 6f | 6e 65 0d 0c d0 32 80 53 |issthiso|ne...2.S|
|000027a0| 20 52 30 2c 6e 75 6d 31 | 2c 23 26 34 30 30 30 30 | R0,num1|,#&40000|
|000027b0| 30 30 30 3a 82 45 51 20 | 6e 75 6d 31 2c 6e 75 6d |000:.EQ |num1,num|
|000027c0| 31 2c 23 26 38 30 30 30 | 30 30 30 30 0d 0c da 41 |1,#&8000|0000...A|
|000027d0| 53 54 52 20 6e 75 6d 31 | 2c 41 58 3a 53 54 52 20 |STR num1|,AX:STR |
|000027e0| 6e 75 6d 32 2c 41 59 20 | 20 20 20 20 20 20 20 20 |num2,AY | |
|000027f0| 20 20 20 20 20 20 20 20 | 20 20 3b 20 73 74 6f 72 | | ; stor|
|00002800| 65 20 63 6f 6f 72 64 69 | 6e 61 74 65 73 0d 0c e4 |e coordi|nates...|
|00002810| 04 0d 0c ee 20 4c 44 52 | 20 52 32 2c 73 33 70 3a |.... LDR| R2,s3p:|
|00002820| 4c 44 52 20 52 31 2c 5b | 52 32 2c 63 6f 75 6e 74 |LDR R1,[|R2,count|
|00002830| 5d 0d 0c f8 2e 4c 44 52 | 20 52 32 2c 63 78 3a 4c |]....LDR| R2,cx:L|
|00002840| 44 52 20 52 30 2c 5b 52 | 32 2c 52 31 5d 3a 43 4d |DR R0,[R|2,R1]:CM|
|00002850| 50 20 52 30 2c 23 26 38 | 30 30 30 30 30 30 30 0d |P R0,#&8|0000000.|
|00002860| 0d 02 42 4c 44 52 43 53 | 20 52 32 2c 63 79 3a 4c |..BLDRCS| R2,cy:L|
|00002870| 44 52 43 53 20 6e 75 6d | 32 2c 5b 52 32 2c 52 31 |DRCS num|2,[R2,R1|
|00002880| 5d 3a 4d 4f 56 43 53 20 | 6e 75 6d 31 2c 52 30 3a |]:MOVCS |num1,R0:|
|00002890| 42 43 53 20 6d 69 73 73 | 74 68 69 73 6f 6e 65 74 |BCS miss|thisonet|
|000028a0| 6f 0d 0d 0c 42 4c 44 52 | 20 52 32 2c 78 70 74 3a |o...BLDR| R2,xpt:|
|000028b0| 4c 44 52 20 52 30 2c 5b | 52 32 2c 52 31 5d 3a 53 |LDR R0,[|R2,R1]:S|
|000028c0| 54 52 20 52 30 2c 58 43 | 25 20 20 20 20 20 20 3b |TR R0,XC|% ;|
|000028d0| 20 73 74 6f 72 65 20 78 | 20 63 6f 6f 72 64 69 6e | store x| coordin|
|000028e0| 61 74 65 0d 0d 16 42 4c | 44 52 20 52 32 2c 79 70 |ate...BL|DR R2,yp|
|000028f0| 74 3a 4c 44 52 20 52 30 | 2c 5b 52 32 2c 52 31 5d |t:LDR R0|,[R2,R1]|
|00002900| 3a 53 54 52 20 52 30 2c | 59 43 25 20 20 20 20 20 |:STR R0,|YC% |
|00002910| 20 3b 20 73 74 6f 72 65 | 20 79 20 63 6f 6f 72 64 | ; store| y coord|
|00002920| 69 6e 61 74 65 0d 0d 20 | 23 4c 44 52 20 52 30 2c |inate.. |#LDR R0,|
|00002930| 63 6f 75 6e 74 6f 66 66 | 3a 41 44 44 20 52 31 2c |countoff|:ADD R1,|
|00002940| 63 6f 75 6e 74 2c 52 30 | 0d 0d 2a 32 4c 44 52 20 |count,R0|..*2LDR |
|00002950| 52 30 2c 53 4f 3a 43 4d | 50 20 52 31 2c 52 30 2c |R0,SO:CM|P R1,R0,|
|00002960| 4c 53 52 23 31 3a 53 55 | 42 43 53 20 52 31 2c 52 |LSR#1:SU|BCS R1,R|
|00002970| 31 2c 52 30 2c 4c 53 52 | 23 31 0d 0d 34 1d 4c 44 |1,R0,LSR|#1..4.LD|
|00002980| 52 20 52 32 2c 73 33 70 | 3a 4c 44 52 20 52 31 2c |R R2,s3p|:LDR R1,|
|00002990| 5b 52 32 2c 52 31 5d 0d | 0d 3e 42 4c 44 52 20 52 |[R2,R1].|.>BLDR R|
|000029a0| 32 2c 7a 70 74 3a 4c 44 | 52 20 52 30 2c 5b 52 32 |2,zpt:LD|R R0,[R2|
|000029b0| 2c 52 31 5d 3a 53 54 52 | 20 52 30 2c 5a 43 25 20 |,R1]:STR| R0,ZC% |
|000029c0| 20 20 20 20 20 3b 20 73 | 74 6f 72 65 20 7a 20 63 | ; s|tore z c|
|000029d0| 6f 6f 72 64 69 6e 61 74 | 65 0d 0d 48 3c a4 77 6f |oordinat|e..H<.wo|
|000029e0| 72 6b 6f 75 74 20 20 20 | 20 20 20 20 20 20 20 20 |rkout | |
|000029f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002a00| 20 20 20 20 20 20 3b 20 | 63 6f 6e 76 65 72 74 20 | ; |convert |
|00002a10| 74 6f 20 32 64 0d 0d 52 | 22 4c 44 52 20 6e 65 67 |to 2d..R|"LDR neg|
|00002a20| 2c 73 33 70 3a 4c 44 52 | 20 52 30 2c 5b 6e 65 67 |,s3p:LDR| R0,[neg|
|00002a30| 2c 63 6f 75 6e 74 5d 0d | 0d 5c 38 4c 44 52 20 6e |,count].|.\8LDR n|
|00002a40| 65 67 2c 63 78 3a 84 52 | 20 6e 75 6d 31 2c 6e 75 |eg,cx:.R| num1,nu|
|00002a50| 6d 31 2c 23 26 38 30 30 | 30 30 30 30 30 3a 53 54 |m1,#&800|00000:ST|
|00002a60| 52 20 6e 75 6d 31 2c 5b | 6e 65 67 2c 52 30 5d 0d |R num1,[|neg,R0].|
|00002a70| 0d 66 20 4c 44 52 20 6e | 65 67 2c 63 79 3a 53 54 |.f LDR n|eg,cy:ST|
|00002a80| 52 20 6e 75 6d 32 2c 5b | 6e 65 67 2c 52 30 5d 0d |R num2,[|neg,R0].|
|00002a90| 0d 70 12 2e 6d 69 73 73 | 74 68 69 73 6f 6e 65 74 |.p..miss|thisonet|
|00002aa0| 6f 0d 0d 7a 32 80 53 20 | 52 30 2c 6e 75 6d 31 2c |o..z2.S |R0,num1,|
|00002ab0| 23 26 34 30 30 30 30 30 | 30 30 3a 82 45 51 20 6e |#&400000|00:.EQ n|
|00002ac0| 75 6d 31 2c 6e 75 6d 31 | 2c 23 26 38 30 30 30 30 |um1,num1|,#&80000|
|00002ad0| 30 30 30 0d 0d 84 41 53 | 54 52 20 6e 75 6d 31 2c |000...AS|TR num1,|
|00002ae0| 41 58 31 3a 53 54 52 20 | 6e 75 6d 32 2c 41 59 31 |AX1:STR |num2,AY1|
|00002af0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002b00| 20 3b 20 73 74 6f 72 65 | 20 63 6f 6f 72 64 69 6e | ; store| coordin|
|00002b10| 61 74 65 73 0d 0d 8e 04 | 0d 0d 98 38 42 4c 20 6c |ates....|...8BL l|
|00002b20| 69 6e 65 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |ine | |
|00002b30| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002b40| 20 20 20 20 20 20 3b 20 | 64 72 61 77 6c 69 6e 65 | ; |drawline|
|00002b50| 0d 0d a2 04 0d 0d ac 16 | 41 44 44 20 63 6f 75 6e |........|ADD coun|
|00002b60| 74 2c 63 6f 75 6e 74 2c | 23 34 0d 0d b6 29 4c 44 |t,count,|#4...)LD|
|00002b70| 52 20 52 31 2c 53 4f 3a | 43 4d 50 20 63 6f 75 6e |R R1,SO:|CMP coun|
|00002b80| 74 2c 52 31 3a 3a 42 4e | 45 20 63 68 65 63 6b 73 |t,R1::BN|E checks|
|00002b90| 65 65 6e 0d 0d c0 04 0d | 0d ca 1b 4c 44 4d 45 41 |een.....|...LDMEA|
|00002ba0| 20 52 31 33 21 2c 7b 52 | 30 2d 52 31 32 2c 52 31 | R13!,{R|0-R12,R1|
|00002bb0| 34 7d 0d 0d d4 3f 4c 44 | 52 20 52 31 33 2c 72 31 |4}...?LD|R R13,r1|
|00002bc0| 33 3a 4d 4f 56 20 50 43 | 2c 52 31 34 20 20 20 20 |3:MOV PC|,R14 |
|00002bd0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002be0| 3b 20 72 65 74 75 72 6e | 20 74 6f 20 42 41 53 49 |; return| to BASI|
|00002bf0| 43 0d 0d de 04 0d 0d e8 | 04 0d 0d f2 0b 2e 70 6c |C.......|......pl|
|00002c00| 6f 74 69 74 0d 0d fc 04 | 0d 0e 06 04 0d 0e 10 42 |otit....|.......B|
|00002c10| 2e 73 63 65 6e 65 20 20 | 20 20 20 20 20 20 20 20 |.scene | |
|00002c20| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002c30| 20 20 20 20 20 20 20 20 | 20 20 3b 20 70 6c 6f 74 | | ; plot|
|00002c40| 20 75 70 20 62 61 63 6b | 20 73 63 65 6e 65 0d 0e | up back| scene..|
|00002c50| 1a 3f 53 54 4d 45 41 20 | 52 31 33 21 2c 7b 52 30 |.?STMEA |R13!,{R0|
|00002c60| 2d 52 31 32 2c 52 31 34 | 7d 20 20 20 20 20 20 20 |-R12,R14|} |
|00002c70| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 73 74 | | ; st|
|00002c80| 6f 72 65 20 72 65 67 69 | 73 74 65 72 73 0d 0e 24 |ore regi|sters..$|
|00002c90| 42 4c 44 52 20 52 31 32 | 2c 73 63 72 61 64 64 3a |BLDR R12|,scradd:|
|00002ca0| 4c 44 52 20 52 31 31 2c | 62 6b 64 20 20 20 20 20 |LDR R11,|bkd |
|00002cb0| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 67 65 74 | | ; get|
|00002cc0| 20 73 63 72 65 65 6e 20 | 61 64 64 72 65 73 73 0d | screen |address.|
|00002cd0| 0e 2e 41 41 44 44 20 52 | 31 34 2c 52 31 32 2c 23 |..AADD R|14,R12,#|
|00002ce0| 26 31 34 30 30 30 20 20 | 20 20 20 20 20 20 20 20 |&14000 | |
|00002cf0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 61 | | ; a|
|00002d00| 64 64 20 73 63 72 65 65 | 6e 20 6c 65 6e 67 74 68 |dd scree|n length|
|00002d10| 0d 0e 38 2f 2e 73 63 6c | 6f 6f 70 20 20 20 20 20 |..8/.scl|oop |
|00002d20| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002d30| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 0d | | ;.|
|00002d40| 0e 42 4b 4c 44 4d 49 41 | 20 52 31 31 21 2c 7b 52 |.BKLDMIA| R11!,{R|
|00002d50| 30 2d 52 39 7d 20 20 20 | 20 20 20 20 20 20 20 20 |0-R9} | |
|00002d60| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 67 | | ; g|
|00002d70| 65 74 20 31 30 20 72 65 | 67 69 73 74 65 72 73 20 |et 10 re|gisters |
|00002d80| 66 72 6f 6d 20 74 61 62 | 6c 65 0d 0e 4c 48 53 54 |from tab|le..LHST|
|00002d90| 4d 49 41 20 52 31 32 21 | 2c 7b 52 30 2d 52 39 7d |MIA R12!|,{R0-R9}|
|00002da0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002db0| 20 20 20 20 20 20 20 20 | 3b 20 73 74 6f 72 65 20 | |; store |
|00002dc0| 74 68 65 6d 20 6f 6e 20 | 74 68 65 20 73 63 72 65 |them on |the scre|
|00002dd0| 65 6e 0d 0e 56 4d 43 4d | 50 20 52 31 32 2c 52 31 |en..VMCM|P R12,R1|
|00002de0| 34 3a 42 4e 45 20 73 63 | 6c 6f 6f 70 20 20 20 20 |4:BNE sc|loop |
|00002df0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002e00| 3b 20 65 6e 64 20 6f 66 | 20 73 63 72 65 65 6e 2c |; end of| screen,|
|00002e10| 20 69 66 20 6e 6f 74 20 | 67 6f 20 62 61 63 6b 0d | if not |go back.|
|00002e20| 0e 60 45 4c 44 4d 45 41 | 20 52 31 33 21 2c 7b 52 |.`ELDMEA| R13!,{R|
|00002e30| 30 2d 52 31 32 2c 50 43 | 7d 20 20 20 20 20 20 20 |0-R12,PC|} |
|00002e40| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 72 | | ; r|
|00002e50| 65 73 74 6f 72 65 20 6f | 6c 64 20 72 65 67 69 73 |estore o|ld regis|
|00002e60| 74 65 72 73 0d 0e 6a 04 | 0d 0e 74 04 0d 0e 7e 3e |ters..j.|..t...~>|
|00002e70| 2e 64 6f 77 6e 6c 6f 61 | 64 20 20 20 20 20 20 20 |.downloa|d |
|00002e80| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002e90| 20 20 20 20 20 20 20 20 | 20 20 3b 20 64 6f 77 6e | | ; down|
|00002ea0| 6c 6f 61 64 20 73 63 65 | 6e 65 0d 0e 88 42 4c 44 |load sce|ne...BLD|
|00002eb0| 52 20 52 30 2c 73 63 72 | 61 64 64 20 20 20 20 20 |R R0,scr|add |
|00002ec0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002ed0| 20 20 20 20 20 20 20 20 | 3b 20 67 65 74 20 73 63 | |; get sc|
|00002ee0| 72 65 65 6e 20 61 64 64 | 72 65 73 73 0d 0e 92 41 |reen add|ress...A|
|00002ef0| 41 44 44 20 52 33 2c 52 | 30 2c 23 26 31 32 30 30 |ADD R3,R|0,#&1200|
|00002f00| 30 3a 41 44 44 20 52 33 | 2c 52 33 2c 23 26 43 30 |0:ADD R3|,R3,#&C0|
|00002f10| 30 20 20 20 20 20 20 20 | 20 20 3b 20 61 64 64 20 |0 | ; add |
|00002f20| 73 63 72 65 65 6e 20 6c | 65 6e 67 74 68 0d 0e 9c |screen l|ength...|
|00002f30| 41 4c 44 52 20 52 31 2c | 62 6b 64 20 20 20 20 20 |ALDR R1,|bkd |
|00002f40| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002f50| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 67 65 74 | | ; get|
|00002f60| 20 73 63 65 6e 65 20 61 | 64 64 72 65 73 73 0d 0e | scene a|ddress..|
|00002f70| a6 2f 2e 6c 6f 6f 70 64 | 6f 20 20 20 20 20 20 20 |./.loopd|o |
|00002f80| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002f90| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 0d 0e b0 | | ;...|
|00002fa0| 46 4c 44 52 20 52 32 2c | 5b 52 30 5d 2c 23 34 20 |FLDR R2,|[R0],#4 |
|00002fb0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002fc0| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 67 65 74 | | ; get|
|00002fd0| 20 61 20 77 6f 72 64 20 | 66 72 6f 6d 20 73 63 72 | a word |from scr|
|00002fe0| 65 65 6e 0d 0e ba 3e 53 | 54 52 20 52 32 2c 5b 52 |een...>S|TR R2,[R|
|00002ff0| 31 5d 2c 23 34 20 20 20 | 20 20 20 20 20 20 20 20 |1],#4 | |
|00003000| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003010| 20 3b 20 73 74 6f 72 65 | 20 69 6e 20 74 61 62 6c | ; store| in tabl|
|00003020| 65 0d 0e c4 4d 43 4d 50 | 20 52 30 2c 52 33 3a 42 |e...MCMP| R0,R3:B|
|00003030| 4c 53 20 6c 6f 6f 70 64 | 6f 20 20 20 20 20 20 20 |LS loopd|o |
|00003040| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;|
|00003050| 20 65 6e 64 20 6f 66 20 | 73 63 72 65 65 6e 2c 20 | end of |screen, |
|00003060| 69 66 20 6e 6f 74 20 67 | 6f 20 62 61 63 6b 0d 0e |if not g|o back..|
|00003070| ce 36 4d 4f 56 20 50 43 | 2c 52 31 34 20 20 20 20 |.6MOV PC|,R14 |
|00003080| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003090| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 72 65 | | ; re|
|000030a0| 74 75 72 6e 0d 0e d8 04 | 0d 0e e2 04 0d 0e ec 43 |turn....|.......C|
|000030b0| 2e 63 6c 65 61 72 20 20 | 20 20 20 20 20 20 20 20 |.clear | |
|000030c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000030d0| 20 20 20 20 20 20 20 20 | 20 20 3b 20 63 6c 65 61 | | ; clea|
|000030e0| 72 20 6c 6f 6f 6b 75 70 | 20 74 61 62 6c 65 73 0d |r lookup| tables.|
|000030f0| 0e f6 4c 4c 44 52 20 52 | 30 2c 73 32 70 3a 4c 44 |..LLDR R|0,s2p:LD|
|00003100| 52 20 52 31 2c 62 6b 64 | 3a 41 44 44 20 52 31 2c |R R1,bkd|:ADD R1,|
|00003110| 52 31 2c 23 26 31 34 30 | 30 30 20 20 20 3b 20 67 |R1,#&140|00 ; g|
|00003120| 65 74 20 73 74 61 72 74 | 20 61 6e 64 20 66 69 6e |et start| and fin|
|00003130| 69 73 68 20 61 64 64 72 | 65 73 73 0d 0f 00 3e 4d |ish addr|ess...>M|
|00003140| 4f 56 20 52 33 2c 23 30 | 20 20 20 20 20 20 20 20 |OV R3,#0| |
|00003150| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003160| 20 20 20 20 20 20 20 20 | 20 3b 20 73 65 74 20 52 | | ; set R|
|00003170| 33 20 74 6f 20 7a 65 72 | 6f 0d 0f 0a 2f 2e 6c 6f |3 to zer|o.../.lo|
|00003180| 6f 70 63 6c 20 20 20 20 | 20 20 20 20 20 20 20 20 |opcl | |
|00003190| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000031a0| 20 20 20 20 20 20 20 3b | 0d 0f 14 41 53 54 52 20 | ;|...ASTR |
|000031b0| 52 33 2c 5b 52 30 5d 2c | 23 34 20 20 20 20 20 20 |R3,[R0],|#4 |
|000031c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000031d0| 20 20 20 20 20 20 3b 20 | 73 74 6f 72 65 20 52 33 | ; |store R3|
|000031e0| 20 69 6e 20 74 61 62 6c | 65 0d 0f 1e 4b 43 4d 50 | in tabl|e...KCMP|
|000031f0| 20 52 30 2c 52 31 3a 42 | 4c 53 20 6c 6f 6f 70 63 | R0,R1:B|LS loopc|
|00003200| 6c 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |l | |
|00003210| 20 20 20 20 20 20 20 3b | 20 72 65 61 63 68 65 64 | ;| reached|
|00003220| 20 65 6e 64 2c 20 69 66 | 20 6e 6f 74 20 67 6f 20 | end, if| not go |
|00003230| 62 61 63 6b 0d 0f 28 36 | 4d 4f 56 20 50 43 2c 52 |back..(6|MOV PC,R|
|00003240| 31 34 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |14 | |
|00003250| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003260| 20 20 3b 20 72 65 74 75 | 72 6e 0d 0f 32 04 0d 0f | ; retu|rn..2...|
|00003270| 3c 04 0d 0f 46 0f 2e 63 | 6c 65 61 72 74 61 62 6c |<...F..c|leartabl|
|00003280| 65 0d 0f 50 3f 4c 44 52 | 20 52 30 2c 63 78 3a 4c |e..P?LDR| R0,cx:L|
|00003290| 44 52 20 52 31 2c 63 79 | 3a 4d 4f 56 20 52 32 2c |DR R1,cy|:MOV R2,|
|000032a0| 23 30 3a 4d 4f 56 20 52 | 33 2c 23 30 3a 4d 4f 56 |#0:MOV R|3,#0:MOV|
|000032b0| 20 52 34 2c 23 30 3a 4d | 4f 56 20 52 35 2c 23 30 | R4,#0:M|OV R5,#0|
|000032c0| 0d 0f 5a 0c 2e 6c 6f 6f | 70 63 6c 31 0d 0f 64 15 |..Z..loo|pcl1..d.|
|000032d0| 53 54 4d 49 41 20 52 30 | 21 2c 7b 52 32 2d 52 35 |STMIA R0|!,{R2-R5|
|000032e0| 7d 0d 0f 6e 19 43 4d 50 | 20 52 30 2c 52 31 3a 42 |}..n.CMP| R0,R1:B|
|000032f0| 4c 53 20 6c 6f 6f 70 63 | 6c 31 0d 0f 78 0e 4d 4f |LS loopc|l1..x.MO|
|00003300| 56 20 50 43 2c 52 31 34 | 0d 0f 82 04 0d 0f 8c 24 |V PC,R14|.......$|
|00003310| 2e 73 69 6e 74 61 62 6c | 65 3a 5d 3a 50 25 3d 50 |.sintabl|e:]:P%=P|
|00003320| 25 2b 28 33 36 31 2a 38 | 29 3a 5b 4f 50 54 41 25 |%+(361*8|):[OPTA%|
|00003330| 0d 0f 96 24 2e 63 6f 73 | 74 61 62 6c 65 3a 5d 3a |...$.cos|table:]:|
|00003340| 50 25 3d 50 25 2b 28 33 | 36 31 2a 38 29 3a 5b 4f |P%=P%+(3|61*8):[O|
|00003350| 50 54 41 25 0d 0f a0 04 | 0d 0f aa 1d 2e 78 73 32 |PTA%....|.....xs2|
|00003360| 3a 5d 3a 50 25 3d 50 25 | 2b 26 35 30 30 30 3a 5b |:]:P%=P%|+&5000:[|
|00003370| 4f 50 54 41 25 0d 0f b4 | 1d 2e 78 73 33 3a 5d 3a |OPTA%...|..xs3:]:|
|00003380| 50 25 3d 50 25 2b 26 35 | 30 30 30 3a 5b 4f 50 54 |P%=P%+&5|000:[OPT|
|00003390| 41 25 0d 0f be 20 2e 78 | 70 6f 69 6e 74 3a 5d 3a |A%... .x|point:]:|
|000033a0| 50 25 3d 50 25 2b 26 35 | 30 30 30 3a 5b 4f 50 54 |P%=P%+&5|000:[OPT|
|000033b0| 41 25 0d 0f c8 20 2e 79 | 70 6f 69 6e 74 3a 5d 3a |A%... .y|point:]:|
|000033c0| 50 25 3d 50 25 2b 26 35 | 30 30 30 3a 5b 4f 50 54 |P%=P%+&5|000:[OPT|
|000033d0| 41 25 0d 0f d2 20 2e 7a | 70 6f 69 6e 74 3a 5d 3a |A%... .z|point:]:|
|000033e0| 50 25 3d 50 25 2b 26 35 | 30 30 30 3a 5b 4f 50 54 |P%=P%+&5|000:[OPT|
|000033f0| 41 25 0d 0f dc 1f 2e 63 | 61 6c 63 78 3a 5d 3a 50 |A%.....c|alcx:]:P|
|00003400| 25 3d 50 25 2b 26 35 30 | 30 30 3a 5b 4f 50 54 41 |%=P%+&50|00:[OPTA|
|00003410| 25 0d 0f e6 1f 2e 63 61 | 6c 63 79 3a 5d 3a 50 25 |%.....ca|lcy:]:P%|
|00003420| 3d 50 25 2b 26 35 30 30 | 30 3a 5b 4f 50 54 41 25 |=P%+&500|0:[OPTA%|
|00003430| 0d 0f f0 1f 2e 73 74 61 | 63 6b 31 3a 5d 3a 50 25 |.....sta|ck1:]:P%|
|00003440| 3d 50 25 2b 26 38 30 30 | 3a 5b 4f 50 54 41 25 0d |=P%+&800|:[OPTA%.|
|00003450| 0f fa 23 2e 62 61 63 6b | 64 72 6f 70 3a 5d 3a 50 |..#.back|drop:]:P|
|00003460| 25 3d 50 25 2b 26 31 34 | 30 30 30 3a 5b 4f 50 54 |%=P%+&14|000:[OPT|
|00003470| 41 25 0d 10 04 1e 2e 73 | 74 61 63 6b 3a 5d 3a 50 |A%.....s|tack:]:P|
|00003480| 25 3d 50 25 2b 26 31 30 | 30 3a 5b 4f 50 54 41 25 |%=P%+&10|0:[OPTA%|
|00003490| 0d 10 0e 07 5d 3a ed 0d | 10 18 0b d6 20 63 6c 65 |....]:..|.... cle|
|000034a0| 61 72 0d 10 22 08 51 25 | 3d 30 0d 10 2c 15 e3 20 |ar..".Q%|=0..,.. |
|000034b0| 41 3d 30 20 b8 20 33 36 | 30 20 88 20 30 2e 35 0d |A=0 . 36|0 . 0.5.|
|000034c0| 10 36 1a 73 69 6e 74 61 | 62 6c 65 21 51 25 3d 28 |.6.sinta|ble!Q%=(|
|000034d0| b5 b2 41 29 2a 34 30 39 | 36 0d 10 40 1a 63 6f 73 |..A)*409|6..@.cos|
|000034e0| 74 61 62 6c 65 21 51 25 | 3d 28 9b b2 41 29 2a 34 |table!Q%|=(..A)*4|
|000034f0| 30 39 36 0d 10 4a 09 51 | 25 2b 3d 34 0d 10 54 05 |096..J.Q|%+=4..T.|
|00003500| ed 0d 10 5e 05 e1 0d 10 | 68 04 0d 10 72 0a dd a4 |...^....|h...r...|
|00003510| 6d 75 6c 74 0d 10 7c 0a | 5b 4f 50 54 41 25 0d 10 |mult..|.|[OPTA%..|
|00003520| 86 31 5c 4d 4f 56 20 6e | 65 67 2c 23 30 20 20 20 |.1\MOV n|eg,#0 |
|00003530| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003540| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 0d | | ;.|
|00003550| 10 90 48 5c 43 4d 50 20 | 6e 75 6d 31 2c 23 26 38 |..H\CMP |num1,#&8|
|00003560| 30 30 30 30 30 30 30 20 | 20 20 20 20 20 20 20 20 |0000000 | |
|00003570| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;|
|00003580| 20 69 73 20 6e 75 6d 62 | 65 72 20 31 20 6e 65 67 | is numb|er 1 neg|
|00003590| 61 74 69 76 65 20 3f 0d | 10 9a 4b 5c 82 43 53 20 |ative ?.|..K\.CS |
|000035a0| 6e 65 67 2c 6e 65 67 2c | 23 31 3a 5c 52 53 42 43 |neg,neg,|#1:\RSBC|
|000035b0| 53 20 6e 75 6d 31 2c 6e | 75 6d 31 2c 23 31 20 20 |S num1,n|um1,#1 |
|000035c0| 20 20 20 20 20 3b 20 79 | 65 73 2c 20 74 68 65 6e | ; y|es, then|
|000035d0| 20 6e 65 67 61 74 61 74 | 65 20 6e 75 6d 62 65 72 | negatat|e number|
|000035e0| 20 31 0d 10 a4 48 5c 43 | 4d 50 20 6e 75 6d 32 2c | 1...H\C|MP num2,|
|000035f0| 23 26 38 30 30 30 30 30 | 30 30 20 20 20 20 20 20 |#&800000|00 |
|00003600| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003610| 20 20 3b 20 69 73 20 6e | 75 6d 62 65 72 20 32 20 | ; is n|umber 2 |
|00003620| 6e 65 67 61 74 69 76 65 | 20 3f 0d 10 ae 4b 5c 82 |negative| ?...K\.|
|00003630| 43 53 20 6e 65 67 2c 6e | 65 67 2c 23 31 3a 5c 52 |CS neg,n|eg,#1:\R|
|00003640| 53 42 43 53 20 6e 75 6d | 32 2c 6e 75 6d 32 2c 23 |SBCS num|2,num2,#|
|00003650| 31 20 20 20 20 20 20 20 | 3b 20 79 65 73 2c 20 74 |1 |; yes, t|
|00003660| 68 65 6e 20 6e 65 67 61 | 74 61 74 65 20 6e 75 6d |hen nega|tate num|
|00003670| 62 65 72 20 32 0d 10 b8 | 41 4d 55 4c 20 61 6e 73 |ber 2...|AMUL ans|
|00003680| 2c 6e 75 6d 31 2c 6e 75 | 6d 32 20 20 20 20 20 20 |,num1,nu|m2 |
|00003690| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000036a0| 20 20 20 20 20 3b 20 61 | 6e 73 3d 6e 75 6d 31 20 | ; a|ns=num1 |
|000036b0| 2a 20 6e 75 6d 32 0d 10 | c2 44 5c 43 4d 50 20 6e |* num2..|.D\CMP n|
|000036c0| 65 67 2c 23 31 20 20 20 | 20 20 20 20 20 20 20 20 |eg,#1 | |
|000036d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000036e0| 20 20 20 20 20 20 3b 20 | 6f 6e 6c 79 20 6f 6e 65 | ; |only one|
|000036f0| 20 6e 65 67 61 74 69 76 | 65 3f 0d 10 cc 4b 5c 52 | negativ|e?...K\R|
|00003700| 53 42 45 51 20 61 6e 73 | 2c 61 6e 73 2c 23 31 20 |SBEQ ans|,ans,#1 |
|00003710| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003720| 20 20 20 20 20 20 20 20 | 20 20 3b 20 79 65 73 2c | | ; yes,|
|00003730| 20 74 68 65 6e 20 6e 65 | 67 61 74 61 74 65 20 61 | then ne|gatate a|
|00003740| 6e 73 77 65 72 0d 10 d6 | 08 5d 3a 3d 30 0d 10 e0 |nswer...|.]:=0...|
|00003750| 04 0d 10 ea 0d dd a4 77 | 6f 72 6b 6f 75 74 0d 10 |.......w|orkout..|
|00003760| f4 0a 5b 4f 50 54 41 25 | 0d 10 fe 43 20 20 20 20 |..[OPTA%|...C |
|00003770| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003780| 20 20 20 3b 20 63 6f 6e | 76 65 72 74 20 33 64 20 | ; con|vert 3d |
|00003790| b8 20 32 64 20 77 69 74 | 68 20 72 6f 74 61 74 69 |. 2d wit|h rotati|
|000037a0| 6f 6e 20 69 6e 20 58 2c | 59 2c 5a 0d 11 08 14 53 |on in X,|Y,Z....S|
|000037b0| 54 4d 45 41 20 52 31 33 | 21 2c 7b 52 31 32 7d 0d |TMEA R13|!,{R12}.|
|000037c0| 11 12 04 0d 11 1c 24 4c | 44 52 20 78 63 2c 58 43 |......$L|DR xc,XC|
|000037d0| 25 3a 4c 44 52 20 79 63 | 2c 59 43 25 3a 4c 44 52 |%:LDR yc|,YC%:LDR|
|000037e0| 20 7a 63 2c 5a 43 25 0d | 11 26 04 0d 11 30 2d 4c | zc,ZC%.|.&...0-L|
|000037f0| 44 52 20 6e 75 6d 31 2c | 76 61 3a 4d 4f 56 20 6e |DR num1,|va:MOV n|
|00003800| 75 6d 32 2c 78 63 3a a4 | 6d 75 6c 74 3a 4d 4f 56 |um2,xc:.|mult:MOV|
|00003810| 20 78 63 25 2c 61 6e 73 | 0d 11 3a 31 4c 44 52 20 | xc%,ans|..:1LDR |
|00003820| 6e 75 6d 31 2c 76 62 3a | 4d 4f 56 20 6e 75 6d 32 |num1,vb:|MOV num2|
|00003830| 2c 79 63 3a a4 6d 75 6c | 74 3a 41 44 44 20 78 63 |,yc:.mul|t:ADD xc|
|00003840| 25 2c 78 63 25 2c 61 6e | 73 0d 11 44 04 0d 11 4e |%,xc%,an|s..D...N|
|00003850| 2d 4c 44 52 20 6e 75 6d | 31 2c 76 65 3a 4d 4f 56 |-LDR num|1,ve:MOV|
|00003860| 20 6e 75 6d 32 2c 78 63 | 3a a4 6d 75 6c 74 3a 4d | num2,xc|:.mult:M|
|00003870| 4f 56 20 79 63 25 2c 61 | 6e 73 0d 11 58 31 4c 44 |OV yc%,a|ns..X1LD|
|00003880| 52 20 6e 75 6d 31 2c 76 | 66 3a 4d 4f 56 20 6e 75 |R num1,v|f:MOV nu|
|00003890| 6d 32 2c 79 63 3a a4 6d | 75 6c 74 3a 41 44 44 20 |m2,yc:.m|ult:ADD |
|000038a0| 79 63 25 2c 79 63 25 2c | 61 6e 73 0d 11 62 31 4c |yc%,yc%,|ans..b1L|
|000038b0| 44 52 20 6e 75 6d 31 2c | 76 67 3a 4d 4f 56 20 6e |DR num1,|vg:MOV n|
|000038c0| 75 6d 32 2c 7a 63 3a a4 | 6d 75 6c 74 3a 41 44 44 |um2,zc:.|mult:ADD|
|000038d0| 20 79 63 25 2c 79 63 25 | 2c 61 6e 73 0d 11 6c 04 | yc%,yc%|,ans..l.|
|000038e0| 0d 11 76 2d 4c 44 52 20 | 6e 75 6d 31 2c 76 69 3a |..v-LDR |num1,vi:|
|000038f0| 4d 4f 56 20 6e 75 6d 32 | 2c 78 63 3a a4 6d 75 6c |MOV num2|,xc:.mul|
|00003900| 74 3a 4d 4f 56 20 7a 63 | 25 2c 61 6e 73 0d 11 80 |t:MOV zc|%,ans...|
|00003910| 31 4c 44 52 20 6e 75 6d | 31 2c 76 6a 3a 4d 4f 56 |1LDR num|1,vj:MOV|
|00003920| 20 6e 75 6d 32 2c 79 63 | 3a a4 6d 75 6c 74 3a 41 | num2,yc|:.mult:A|
|00003930| 44 44 20 7a 63 25 2c 7a | 63 25 2c 61 6e 73 0d 11 |DD zc%,z|c%,ans..|
|00003940| 8a 31 4c 44 52 20 6e 75 | 6d 31 2c 76 6b 3a 4d 4f |.1LDR nu|m1,vk:MO|
|00003950| 56 20 6e 75 6d 32 2c 7a | 63 3a a4 6d 75 6c 74 3a |V num2,z|c:.mult:|
|00003960| 41 44 44 20 7a 63 25 2c | 7a 63 25 2c 61 6e 73 0d |ADD zc%,|zc%,ans.|
|00003970| 11 94 04 0d 11 9e 3b 4d | 4f 56 20 78 63 25 2c 78 |......;M|OV xc%,x|
|00003980| 63 25 2c 41 53 52 23 37 | 20 3a 4c 44 52 20 6e 75 |c%,ASR#7| :LDR nu|
|00003990| 6d 31 2c 78 61 64 64 3a | 41 44 44 20 78 63 25 2c |m1,xadd:|ADD xc%,|
|000039a0| 78 63 25 2c 6e 75 6d 31 | 2c 4c 53 4c 23 34 0d 11 |xc%,num1|,LSL#4..|
|000039b0| a8 3b 4d 4f 56 20 79 63 | 25 2c 79 63 25 2c 41 53 |.;MOV yc|%,yc%,AS|
|000039c0| 52 23 31 32 3a 4c 44 52 | 20 6e 75 6d 31 2c 79 61 |R#12:LDR| num1,ya|
|000039d0| 64 64 3a 41 44 44 20 79 | 63 25 2c 79 63 25 2c 6e |dd:ADD y|c%,yc%,n|
|000039e0| 75 6d 31 2c 4c 53 4c 23 | 34 0d 11 b2 3b 4d 4f 56 |um1,LSL#|4...;MOV|
|000039f0| 20 7a 63 25 2c 7a 63 25 | 2c 41 53 52 23 31 32 3a | zc%,zc%|,ASR#12:|
|00003a00| 4c 44 52 20 6e 75 6d 31 | 2c 72 68 6f 20 3a 41 44 |LDR num1|,rho :AD|
|00003a10| 44 20 7a 63 25 2c 7a 63 | 25 2c 6e 75 6d 31 2c 4c |D zc%,zc|%,num1,L|
|00003a20| 53 4c 23 34 0d 11 bc 04 | 0d 11 c6 04 0d 11 d0 42 |SL#4....|.......B|
|00003a30| 4c 44 52 20 6e 75 6d 31 | 2c 64 3a 4d 4f 56 20 6e |LDR num1|,d:MOV n|
|00003a40| 75 6d 32 2c 78 63 25 3a | a4 6d 75 6c 74 3a 4d 4f |um2,xc%:|.mult:MO|
|00003a50| 56 20 6e 75 6d 31 2c 61 | 6e 73 3a 4d 4f 56 20 6e |V num1,a|ns:MOV n|
|00003a60| 75 6d 32 2c 7a 63 25 3a | 42 4c 20 64 69 76 0d 11 |um2,zc%:|BL div..|
|00003a70| da 14 41 44 44 20 52 31 | 32 2c 61 6e 73 2c 23 31 |..ADD R1|2,ans,#1|
|00003a80| 36 30 0d 11 e4 04 0d 11 | ee 42 4c 44 52 20 6e 75 |60......|.BLDR nu|
|00003a90| 6d 31 2c 64 3a 4d 4f 56 | 20 6e 75 6d 32 2c 79 63 |m1,d:MOV| num2,yc|
|00003aa0| 25 3a a4 6d 75 6c 74 3a | 4d 4f 56 20 6e 75 6d 31 |%:.mult:|MOV num1|
|00003ab0| 2c 61 6e 73 3a 4d 4f 56 | 20 6e 75 6d 32 2c 7a 63 |,ans:MOV| num2,zc|
|00003ac0| 25 3a 42 4c 20 64 69 76 | 0d 11 f8 14 41 44 44 20 |%:BL div|....ADD |
|00003ad0| 6e 75 6d 32 2c 61 6e 73 | 2c 23 39 36 0d 12 02 10 |num2,ans|,#96....|
|00003ae0| 4d 4f 56 20 6e 75 6d 31 | 2c 52 31 32 0d 12 0c 04 |MOV num1|,R12....|
|00003af0| 0d 12 16 14 4c 44 4d 45 | 41 20 52 31 33 21 2c 7b |....LDME|A R13!,{|
|00003b00| 52 31 32 7d 0d 12 20 08 | 5d 3a 3d 30 0d ff |R12}.. .|]:=0.. |
+--------+-------------------------+-------------------------+--------+--------+